UI自動化通過文字 父子元素,兄弟元素定位

2022-08-24 15:12:12 字數 2201 閱讀 5910

一、文字定位:

通過介面上的文字進行定位,注意如果同乙個頁面上存在多個同樣的文字的情況,返回的值會是多個,建議只存在乙個情況下才用這方法。

就可以通過:driver.find_element_by_xpath("//*[text()='地圖']") ,進行定位。

driver = webdriver.chrome()

driver.implicitly_wait(20)

driver.get("")

print(driver.find_element_by_xpath("//*[text()='地圖']").text)

sleep(5)

driver.quit()

二、父子元素定位

通過介面上的父元素和子元素關係定位:

如:通過輸入框元素來定位父元素的父元素

就可以通過:

driver.find_element_by_xpath('//*[@id="kw"]/../..')或driver.find_element_by_xpath('//*[@id="kw"]/parent::*/parent::form'),進行定位父級。

(1).表示當前節點,..表示父節點

(2)parent,取當前節點的父節點

三、兄弟元素定位

通過介面上的兄弟元素關係定位:

(1)通過弟弟元素定位哥哥元素

就可以通過://*[@id="u1"]/a[3]/preceding-sibling::a[1]來進行哥哥元素定位,其中「a[1]」表示離本元素最近的乙個a元素,如果是「a[2]」則表示離本元素最近的第2個a元素
driver = webdriver.chrome(a)

driver.implicitly_wait(20)

driver.get("")

print(driver.find_element_by_xpath('//*[@id="u1"]/a[3]/preceding-sibling::a[1]').text) # 上節點

sleep(5)

driver.quit()

(2)通過哥哥元素定位弟弟元素

就可以通過://*[@id="u1"]/a[3]/following-sibling::a[1]來進行弟弟元素定位,其中「a[1]」表示離本元素最近的乙個a元素,如果是「a[2]」則表示離本元素最近的第2個a元素
driver = webdriver.chrome()

driver.implicitly_wait(20)

driver.get("")

print(driver.find_element_by_xpath('//*[@id="u1"]/a[3]/following-sibling::a[1]').text) # 下節點

sleep(5)

driver.quit()

UI自動化元素定位

1.id定位 find element by id self,id 2.name定位 find element by name self,name 3.class定位 find element by class name self,name 4.tag定位 find element by tag n...

UI自動化 Selenium元素定位

ui自動化要做的就是模擬滑鼠或鍵盤操作,從而執行測試用例的行為。模擬滑鼠操作更多是通過控制元素進行動作的,而控制元素的第一步就是定位元素。接下來,結合selenium介紹幾種常見的元素定位方法 find element by id 通過id來定位元素 在html中,id是唯一的,通過id但部分元素可...

UI自動化測試元素定位思想

2014年的最後一天,以一篇短文紀念一下。經常看到有同學說ui自動化測試定位難,找不到北。這話是不錯的,定位是難,靈活且複雜,需要經驗加技術,但是有寫東西是可以提煉出來作為思想去推而廣之的。簡單來說,ui元素定位思想應該如下 大道至簡指的是有明顯特徵的元素一定要用明顯的特徵去定位。比如有id有nam...