天天看點

Selenium3自動化測試【14】元素定位之ID

Selenium需要告知其如何去定位元素,來模拟使用者動作。例如要操作Bing搜尋頁。

 首先要找到搜尋框與搜尋按鈕;

 通過鍵盤輸入檢索的關鍵字;

 用滑鼠單擊搜尋按鈕;

 送出搜尋請求。

Selenium能夠模拟上面描述的動作,但Selenium并不了解如何在搜尋框中輸入關鍵字或單擊搜尋按鈕的操作。Selenium需要代碼告訴其如何定位搜尋框或搜尋按鈕,進而實作模拟人工的操作。

Selenium提供了多種方法用于定位元素(find_elementby),其中号代表可變的方法,例如id、name等。

Selenium提供了8種find_elementby方法用于定位元素。本節我們會分别介紹這些方法,8種find_elementby方法如下表所示。

 find_element_by_id:通過元素的ID屬性值來定位元素;

 find_element_by_name:通過元素的name屬性值來定位元素;

 find_element_by_class_name:通過元素的class屬性值來定位元素;

 find_element_by_xpath:通過Xpath來定位元素;

 find_element_by_tag_name:通過元素的tag name來定位元素;

 find_element_by_css_selector:通過CSS選擇器來定位元素;

 find_element_by_link_text:通過元素标簽對之間的文本資訊來定位元素;

 find_element_by_partial_link_text:通過元素标簽對之間的部分文本資訊來定位元素;

id(find_element_by_id)是Selenium中較常用的定位方式,因為一般不會存在id重名的元素。

目前大部分技術研發團隊的開發方式,都采用的是前後端分離的技術。很多團隊在前端代碼送出後,在稽核代碼時,都會檢查元素的屬性定義,其中id的唯一就是檢查的一項。是以find_element_by_id方法是查找頁面上元素的最佳方法。

搜尋框元素的屬性描述HTML代碼如下:

是以id=“sb_form_q”的定位方法就是find_element_by_id(“sb_form_q”),如圖所示。

Selenium3自動化測試【14】元素定位之ID

Selenium通過FireFox浏覽器驅動操作輸入框的代碼如下:

打開PyCharm編譯器,建立1個工程,且在該工程下建立一個.py檔案(py檔案名自己命名即可,如Demo.py),然後将如上代碼敲入到建立的py檔案中,如圖所示。

Selenium3自動化測試【14】元素定位之ID

右鍵單擊選擇Run 即可(如 Run ‘Demo’)運作代碼,觀察到如下操做。

打開FireFox浏覽器;

打開Bing首頁;

鍵入Bella;

關閉浏覽器。

【測試全系列視訊課程】請點選我哦.....

(https://edu.51cto.com/lecturer/968349.html)

Selenium3自動化測試【13】FireFox與Chrome浏覽器元素定位

圖書京東、當當有售

京東:https://item.jd.com/12784287.html

當當:http://product.dangdang.com/29177828.html

Selenium3自動化測試【14】元素定位之ID

繼續閱讀