单选框、复选框、文本框和密码框的元素标签都是input,此时单靠tagName无法准确地得到我们想要的元素,需要结合type属性才能过滤出我们要的元素。示例代码如下:
public class SearchElementsByTagName{ public static void main(String[] args){ WebDriver driver = new FirefoxDriver(); driver.get("http://www.forexample.com"); List<WebElement> allInputs = driver.findElements(By.tagName("input")); //只打印所有文本框的值 for(WebElement e: allInputs){ if (e.getAttribute(“type”).equals(“text”)){ System.out.println(e.getText().toString()); //打印出每个文本框里的值 } } } }
如果此时我们要通过className属性来查找该button并操作它的话,就可以使用className属性了
public class SearchElementsByClassName{ public static void main(String[] args){ WebDriver driver = new FirefoxDriver(); driver.get("http://www.forexample.com"); WebElement searchBox = driver.findElement(By.className("buttonStyle")); searchBox.sendKeys("Hello, world"); } }
参考:http://www.cnblogs.com/qingchunjun/p/4208159.html