//定位以 “ http://v ” 开头的link
List<WebElement> startLink = driver.findElements(By.xpath("//a[starts-with(@href,'http://v')]"));
//定位id含有 “ i ” link
List<WebElement> containLink = driver.findElements(By.xpath("//a[contains(@id,'i')]"))
;
许多文档上有end-with的API,但本人使用该函数提示为Invalid,尚未测试成功,故不写入。
总结:
package demo.test;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import com.framework.webdriver.DriverFactory;
public class FindByXpath {
WebDriver driver;
@BeforeClass
public void beforeClass(){
this.driver = new FirefoxDriver();
driver.get("http://www.baidu.com/");
}
@Test
public void getElementByXpath(){
try {
//定位以 “ http://v ” 开头的link
List<WebElement> startLink = driver.findElements(By.xpath("//a[starts-with(@href,'http://v')]"));
System.out.println("startLinkSize = "+startLink.size());
//定位id含有 “ i ” link
List<WebElement> containLink = driver.findElements(By.xpath("//a[contains(@id,'i')]"));
System.out.println("containLinkSize = "+containLink.size());
} catch (Exception e) {
System.out.println(e);
}
}
}
运行结果: