iT邦幫忙

2024 iThome 鐵人賽

0

在第 6 天的時候我們有講到 XPATH,可以讓我們更方便去定位網頁上的元素。今天要介紹的就是 XPATH 更進階的用法- XPATH 軸(axes)。

絕對路徑 vs 相對路徑

一開始我們有講到,如果直接在 F12 的介面複製 XPATH 看起來會像這樣

/html/body/nav/div[2]/ul[2]/li[1]/button

它會從 html 這個根結點開始一路往下尋找到目標元素,這個就是絕對路徑

而我們用 class 或其他屬性去尋找我們要的元素就是相對路徑。

而 XPATH Axes 是藉由目前找到的節點去往上或往下找我們的目標元素。

XPATH Axes

在 Selenium Webdriver 內,有 13 個軸可以使用,下面介紹幾個常用的軸,其他軸可參考XPath学习:轴(4)——ancestor

  • Child: 選擇目前節點下的所有子元素(目前節點下面一階的所有同等元素都會被選到)。
  • Parent: Child 的相反,選到目前元素上面一階的元素(父元素),跟 Child 不同的地方是父元素只會有一個。
  • Descendant: 照翻過來是後裔的意思。使用後會選擇到目前元素下面所有的元素。
  • Ancestor: 意思是祖先,使用後會選擇到目前元素上面所有的元素(直到根節點)。
  • Descendant-or-self: 跟 Descendant 一樣,但目前所在的節點也會被選到。
  • Ancestor-or-self: 跟 Ancestor 一樣,但目前所在的節點也會被選到。
  • Preceding-sibling: 選擇目前節點前面的所有同級節點。
  • Following-sibling: 選擇目前節點後面的所有同級節點。

上一篇
D27 allure 截圖實作(2)
下一篇
D29 Jenkins 介紹與安裝
系列文
利用Python完成自動化測試專案30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言