Python+webdriver定位元素的幾種方法


 

一、selenium定位元素的幾種方法

selenium2.0=selenium1.0+webdriver

 

selenium定位元素的幾種方法:WebDriver,selenium IDE,selenium Grid

 

 

  • Selenium IDE:一個Firefox插件,可以錄制用戶的基本操作,生成測試用例。隨后可以運行這些測試用例在瀏覽器里回放,可將測試用例轉換為其他語言的自動化腳本。
  • Selenium Remote Control (RC) :支持多種平台(Windows,Linux,Solaris)和多種瀏覽器(IE,Firefox,Opera,Safari),可以用多種語言(Java,Ruby,Python,Perl,PHP,C#)編寫測試用例。
  • Selenium Grid :允許Selenium-RC 針對規模龐大的測試案例集或者需要在不同環境中運行的測試案例集進行擴展。

 

二、webdriver+python定位元素的幾種方法

1.通過id定位 find_element_by_id()

2.通過name定位 find_element_by_name()

3.通過class name定位 find_element_by_class_name()

4.通過tag name定位 find_element_by_tag_name()

5.通過link定位 find_element_by_link_text()

6.通過partical link定位 find_element_by_partical_link_text()

7.通過xpath定位 find_element_by_xpath()

8.通過css定位 find_element_by_css_selector()

 

注:

1.patical link即部分文本,定位時只需要輸入部分文本,如超鏈接文本為"去付款吧",使用link定位及find_element_by_link_text('去付款吧'),使用partical link定位find_element_by_partical_link_text('付款')

2.tag name 相同的概率很高

3.xpath定位分為絕對路徑和相對路徑,絕對路徑以'/'開頭,相對路徑以'//'開頭

4.css定位中,id用'#',class用'.',如定位<div class="subdiv">使用find_element_by_css_selector('.subdiv'),定位<ul id="recordlist">使用find_element_by_css_selector('#recordlist')

5.id/name/class/link/xpath是webdriver中最常用的定位方法

三、CSS選擇器

定位</from>

find_element_by_css_selector(‘from’)

定位<div class="subdiv">

find_element_by_css_selector(‘.subdiv’) find_element_by_css_selector(‘from+div’)

定位<ul id="recordlist">

find_element_by_css_selector(‘#recordlist’)

find_element_by_css_selector(‘ul#recordlist’) find_element_by_css_selector(‘div>ul’)

定位<p>Heading</p>

find_element_by_css_selector(‘div>ul’) find_element_by_css_selector(‘div.subdiv > ul > p’)

四、HTML DOM Document 對象方法

document.getElementById(  )

document.getElementsByName(  )

document.getElementsByClassName(  )

document.getElementsByTagName(  )

注釋:傳遞給 getElementsByTagName() 方法的字符串可以不區分大小寫

document.querySelector(  )

document.querySelectorAll(  )

參考資料:

https://www.cnblogs.com/shipengzhi/articles/2035304.html

http://www.w3school.com.cn/jsref/dom_obj_document.asp


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM