zoukankan      html  css  js  c++  java
  • selenium使用-进一步封装

    封装的目的在于当页面改动时,方便修改.

    我们在做一个测试项目的时候,首先要将用到的这些按钮,属性封装好,方便后面调用或者修改

    测试页面mailTest

    import unittest
    from selenium import webdriver
    from MailLoginPage import MailLoginPage
    
    class SeTest(unittest.TestCase):
        def setUp(self):
            self.se = webdriver.Chrome()
            self.se.maximize_window()
            self.se.get('https://www.jianshu.com/sign_in')
            self.se.implicitly_wait(2)
            self.login_page = MailLoginPage(self.se)
    
    
        def testMail(self):
            username = self.login_page.username
            username.send_keys('18513729036')
            password = self.login_page.password
            password.send_keys('wangxue1254')
            self.se.implicitly_wait(2)
            self.login_page.login_button_click()
            self.se.implicitly_wait(10)
            print(self.se.title)
    
        def tearDown(self):
            pass
    
        if __name__ == '__main__':
            unittest.main()
    MailLoginPage.py
    class MailLoginPage:
        def __init__(self,driver):
            self.driver = driver
    
        def tab_login_click(self):
            return self.driver.find_element_by_xpath('/html/body/div[1]/div[2]/h4/div/a[1]').click()
    
        def tab_reg_click(self):
            return self.driver.find_element_by_id('js-sign-up-btn').click()
    
        @property  #将方法换成属性调用
        def username(self):
            return self.driver.find_element_by_id('session_email_or_mobile_number')
    
        @property
        def password(self):
            return self.driver.find_element_by_id('session_password')
    
        def login_button_click(self):
            return self.driver.find_element_by_id('sign-in-form-submit-btn').click()
    
        def remeber_me_click(self):
            return self.driver.find_element_by_id('session_remember_me').click()
    
        def login_button_click(self):
            return self.driver.find_element_by_id('sign-in-form-submit-btn').click()
  • 相关阅读:
    AppDelegate减负之常用三方封装
    AppDelegate减负之常用三方封装
    基于AFN封装的带缓存的网络请求
    iOS-创建自己的日志系统
    UIImage 图片处理:截图,缩放,设定大小,存储
    /bin/sh^M: bad interpreter:解决办法
    mac上获取手机的uuid
    iOS PureLayout使用
    iOS集成友盟推送
    完全理解Python的 '==' 和 'is'
  • 原文地址:https://www.cnblogs.com/wangxuetest/p/13277541.html
Copyright © 2011-2022 走看看