Selenium Webdriver元素定位的常用方式

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

posted @   陈泽泽  阅读(144)  评论(0编辑  收藏  举报
编辑推荐:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
点击右上角即可分享
微信分享提示