selenium + python自动化测试unittest框架学习(五)webdriver的二次封装
生活随笔
收集整理的這篇文章主要介紹了
selenium + python自动化测试unittest框架学习(五)webdriver的二次封装
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
因為webdriver的api方法很長,再加上大多數的定位方式是以xpath方式定位,更加讓代碼看起來超級長,為了使整體的代碼看起來整潔,對webdriver進行封裝,學習資料來源于蟲師的《selenium +? python自動化測試》一書。
在與測試用例文件夾同一目錄下新建一個文件夾package,用來放置封裝方法的模塊文件
我們將webdriver二次封裝的文件命名為location.py
from selenium import webdriver from test_case.public import login #login文件中的driver傳入#定位一個元素 def findId(driver,Id):f = driver.find_element_by_id(Id)return fdef findName(driver,Name):f = driver.find_element_by_name(Name)return fdef findClassName(driver,ClassName):f = driver.find_element_by_class_name(ClassName)return fdef findTagName(driver,TagName):f = driver.find_element_by_tag_name(TagName)return fdef findCss(driver,Css):f = driver.find_element_by_css_selector(Css)return fdef findLinkText(driver,LinkText):f = driver.find_element_by_link_text(LinkText)return fdef findPLinkText(driver,PLinkText):f = driver.find_element_by_partial_Link_text(PLinkText)return fdef findxPath(driver,xPath):f = driver.find_element_by_xpath(xPath)return f#定位一組元素def findsId(driver,Id):f = driver.find_elements_by_id(Id)return fdef findsName(driver,Name):f = driver.find_elements_by_name(Name)return fdef findsClassName(driver,ClassName):f = driver.find_elements_by_class_name(ClassName)return fdef findsTagName(driver,TagName):f = driver.find_elements_by_tag_name(TagName)return fdef findsCss(driver,Css):f = driver.find_elements_by_css_selector(Css)return fdef findsLinkText(driver,LinkText):f = driver.find_elements_by_link_text(LinkText)return fdef findsPLinkText(driver,PLinkText):f = driver.find_elements_by_partial_link_text(PLinkText)return fdef findsxPath(driver,xPath):f = driver.find_elements_by_xpath(xPath)return f在其他需要用到定位方法的文件中將模塊導入,且將文件所在的文件路徑加入sys.path路徑集中便可引用
#實現webdriver二次封裝 from package import location sys.path.append("D:\\fcj\\study\\seleniumtest\\package") l = location之后使用的定位方法則變成以下簡潔寫法:
例如:find_element_by_id()的方法
l.findId(driver,"id")?
轉載于:https://www.cnblogs.com/evablogs/p/7269956.html
總結
以上是生活随笔為你收集整理的selenium + python自动化测试unittest框架学习(五)webdriver的二次封装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Rxjava与Retrofit的使用
- 下一篇: Apache Kylin Cube 的构