自動化一般需要四步操作:獲取元素,操作元素,獲取返回結果,斷言(返回結果與期望結果是否一致),最後自動出測試報告。selenium提供8種元素定位的方法:id,name,class name,link text,xpath,css selector,tag name ,partial link tex。
這八種元素定位方法用python語言表示為:
1.通過id定位元素
從圖1可以看到輸入框有個id屬性:id="kw",這裡可以通過它的id屬性定位到這個元素,並且通過send_keys()傳輸字元給輸入框。
2.通過class_name定位元素
從圖1可以看到輸入框有個class屬性:class="s_ipt",這裡可以通過它的class屬性定位到這個元素,並且通過send_keys()傳輸字元給輸入框
3.通過name定位元素
從圖1可以看到輸入框有個name屬性:name="wd",這裡可以通過它的name屬性定位到這個元素,並且通過send_keys()傳輸字元給輸入框。
4.通過tag定位元素
從圖1可以看到輸入框有個tag(標籤)屬性:input,這裡可以通過它的標籤屬性定位到這個元素,並且通過send_keys()傳輸字元給輸入框。但是標籤往往不是惟一的,所有在實際應用中不常用
5.通過link_text定位元素
使用定位器,點選「新聞」按鈕,定位到該元素,如圖2
新聞可以看到圖2中「新聞」有個href屬性為"",屬於超連結,這種元素就可以使用link_text進行定位。
6.通過partial_link_text定位元素
如果鏈結的字串太長的話,全部輸入影響**美觀也容易出錯,這時就可以採用 partial_link_text,模糊匹配、擷取字串的一部分定位到元素。如圖2中,我們定位新聞可以如下寫。
7.通過xpath定位元素
上面6種方法都是通過元素的某乙個屬性進行定位,但是如果乙個元素沒有上述屬性或者屬性不是唯一時,我們可以使用xpath進行元素定位。
利用瀏覽器除錯功能,定位到元素所在的那一行右鍵-->copy-->copy xpath。
8.通過css selector定位元素
css方法和xpath是完全不同的語法,通過定位器我們先找到搜尋框的css。
selenium 八種元素定位方法
from selenium import webdriver import time 這一步會開啟乙個空白的瀏覽器 driver webdriver.chrome 訪問 driver.get 元素定位的第一種方式 id屬性定位 driver.find element by id kw 元素定位的第二...
Selenium 元素定位
ui自動化中元素的定位是最最基本,但也是最讓人頭痛的地方。控制項的動態載入,屬性的動態生成抑或因為開發的懶而造成控制項的識別問題總是自動化測試的噩夢。webdriver作為主流的網頁測試工具提供了非常豐富的識別控制項的方法。這次在寫自動化庫的時候也遇到各種定位問題,著實抓狂了一陣,但最終都解決了。雖...
selenium元素定位
單數形式 複數形式,返回的是乙個列表 使用範圍 a.元素有id屬性 b.id不是動態的,為固定值 driver.find element by id id屬性值 使用範圍 a.元素有id屬性 b.id不是動態的,為固定值 語法 driver.find element by name name屬性值 ...