selenium+java如何定位元素
阿新 • • 發佈:2019-01-10
通過id/name/className元素定位
(以id為例,name/className是一個寫法)
頁面原始碼如下
<input id="001" class="form-control" type="text" readonly="readonly">
java中對應程式碼
driver.findElement(By.id("001")).click();
輸入框用sendKeys定位
頁面原始碼如下
<input id="Number" class="form-control" type="text" placeholder="請輸入編碼" value="">
java中對應程式碼
driver.findElement(By.id("Number")).sendKeys(001);
通過linktext定位
一般專門用於定位頁面上的超文字連結
java中對應程式碼
driver.findElement(By.linkText("About Student")).click();
通過xpath定位
XPath是XML Path的簡稱,由於HTML文件本身就是一個標準的XML頁面,所以我們可以使用XPath的語法來定位頁面元素。
通過FirePath進行絕對路徑定位
通過css定位
tips
1. 一般不推薦使用絕對路徑的寫法,因為一旦頁面結構發生變化,該路徑也隨之失效,必須重新寫。
2. 絕對路徑以單/號表示,相對路徑則以//表示。當/出現在xpath路徑中時,則表示尋找父節點的直接子節點,當//出現在xpath路徑中時,表示尋找父節點下任意符合條件的子節點.
3. 不建議用xpath做元素定位,因為xpath做元素定位將導致指令碼執行速度大大降低。