业务逻辑层面的相关操作例如:创建浏览器对象、访问url、元素定位、输入、悬停、切换句柄、点击等待操作等等。此代码程序不会执行浏览器任何操作行为。(从selenium里面取需要操作的相关方法)
关键字类:(简单书写)文章源自玩技e族-https://www.playezu.com/26225.html
class keyDemo: driver = webdriver.Chrome() #打开浏览器 def open(self,url) self.driver.get(url) #定位元素 def locator(self,name,value): return self.driver.find_element(name,value) #输入值 def input(self,name,value,txt) self.locator(name,value).send_keys(txt) #点击操作 def click(self,name,value): self.locator(name,value).click() #退出操作 def quite(self): self.driver.quite() ......
构造函数初始化driver(可以根据输入浏览器类型执行测试)文章源自玩技e族-https://www.playezu.com/26225.html
from selenium import webdriver # 基于type生成对应的浏览器对象 def browser(type_): try: driver = getattr(webdriver, type_)() except Exception as e: print(e) driver = webdriver.Chrome() return driver class keyDemo: # driver = webdriver.Chrome() # 打开浏览器 def __init__(self, type_): self.driver = browser(type_) def open(self, url): self.driver.get(url) # 定位元素 def locator(self, name, value): return self.driver.find_element(name, value) # 输入值 def input(self, name, value, txt): self.locator(name, value).send_keys(txt) # 点击操作 def click(self, name, value): self.locator(name, value).click() # 强制等待 def sleep(self, time_): self.sleep(time_) # 退出操作 def quite(self): self.driver.quit()
使用关键字类编写测试用例(未优化)文章源自玩技e族-https://www.playezu.com/26225.html
from base.login_base import keyDemo kd = keyDemo('Chrome') kd.open('https://www.baidu.com') kd.input('id', 'kw', '玩技e族') kd.click('id', 'su') kd.quite()
使用关键字类编写测试用例(使用Unittest方式):代码冗余度过高还可以再精简。文章源自玩技e族-https://www.playezu.com/26225.html
from base.login_base import keyDemo import unittest class CassDemo(unittest.TestCase): def test_01(self): kd = keyDemo('Chrome') kd.open('https://www.baidu.com') kd.input('id', 'kw', '玩技e族') kd.click('id', 'su') kd.quite() if __name__ == '__main__': unittest.main()文章源自玩技e族-https://www.playezu.com/26225.html文章源自玩技e族-https://www.playezu.com/26225.html
评论