单选框、复选框、文本框和密码框的元素标签都是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