Java+Selenium3方法篇6-findElement之By XPath
阿新 • • 發佈:2019-02-16
前面一篇,介紹了查詢元素的方法By id,這篇來介紹By XPath。在如何寫XPath表示式之前,你需要對XPath有一個基本瞭解,關於XPath入門,你可以點選這裡。
下面,通過百度首頁,演示如何寫百度搜索輸入框和百度搜索按鈕的XPath表示式。
XPath一般在實際自動化測試專案中用到比較多,雖然有8種元素定位方法,但是XPath如果寫熟練了,基本上可以用XPath完成百分之95以上的元素定位。例如,在上面的兩個元素,我可以用好幾種XPath表示式去描述這個元素。package lessons; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class FirstScript { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS); driver.get("https://www.baidu.com"); driver.findElement(By.xpath(".//*[@id='kw']")).sendKeys("Java"); driver.findElement(By.xpath(".//*[@id='su']")).click(); //關閉並退出瀏覽器 //driver.quit(); } }
百度搜索輸入框:
.//*/input[@id='kw']
.//*/input[@name='wd']
.//*/input[@class='s_ipt']
搜尋提交按鈕:
.//*/input[@id='su']
.//*/input[@value='百度一下']
.//*/input[@class='bg s_btn']