1. 绝对路径定位
WebElement button = driver.findElement(By.xpath("/html/body/div/input[@value='提交']"));
2. 相对路径定位
WebElement button = driver.findElement(By.xpath("//input[@value='提交']"));
3. 使用索引号定位
WebElement button = driver.findElement(By.xpath("//input[2]"));
4. 使用页面属性定位
WebElement img = driver.findElement(By.xpath("//img[@alt='auto-test']"));
5. 属性模糊定位
WebElement img = driver.findElement(By.xpath("//img[starts-with(@alt,'blog')]"));
WebElement img = driver.findElement(By.xpath("//img[contains(@alt,'test')]"));
6. text()函数文本定位
WebElement text = driver.findElement(By.xpath("//*[text()='百度搜索']"));
WebElement text = driver.findElement(By.xpath("//a[contains(text(),'搜索')]"));
7.同级元素定位
后面加上“..”,表示回到父节点,回到父节点后再往下定位其他子节点如:
WebElement text = driver.findElement(By.xpath("//div[contains(@id,'title:')]/../button[1]");