selenim 部分屬性定位(contains)
阿新 • • 發佈:2022-04-16
在做web 自動化時經常會遇到前端開發修改頁面元素後自動化指令碼無法定位元素的問題,為了提升指令碼的穩定性在做元素定位時可以使用相對路徑來定位
元素定位方式:xpath 有一個根據部分屬性來定位的關鍵字 contains 該關鍵字可以根據html 元素的部分屬性來定位下面展示演示示列
第一種寫法:定位語句://div[@id="s-top-left"]/a[1] 已經定位到新聞
第二種寫法:雙相對路徑定位,定位語句://div[@id="head"]//a[contains(a,新聞)]
對比兩種語句寫法第一種://div[@id="s-top-left"]/a[1]
第二種://div[@id="head"]//a[contains(a,新聞)]
第一種時找到 a標籤的 div層定位,第二種時找到最外層的div在通過a標籤的文字定位到對應的元素相比第一種只要元素的文字不改變該定位就可以定位成功,反而第一種如果新增的新的標籤層級發生了變化就無法定位,另外定位並沒有考慮指令碼執行效率方面,單純是以穩定性方面考慮給定位做一個思路