首页 > 编程语言 > 详细

Selenium常用方法java版(工作笔记)

时间:2020-05-14 12:41:56      阅读:49      评论:0      收藏:0      [点我收藏+]

Selenimu Java 常用API

元素选择器

  • id选择器

    //java
    driver.findElement(By.id("divId"));
    
    <!--html-->
    <div id="divId"></div>
    
  • name选择器

    //java
    driver.findElement(By.name("divName"));
    
    <!--html-->
    <div name="divName"></div>
    
  • linkText选择器

    //java
    driver.findElement(By.linkText("百度a"));
    
    <!--html-->
    <a href="https://www.baidu.com">百度a</a>
    
  • partialLink选择器
    跟上面的linkText很相似,不过partialLink可以匹配部分链接文字

    //java
    driver.findElement(By.linkText("百"));
    driver.findElement(By.linkText("度"));
    driver.findElement(By.linkText("度a"));
    //三个返回的结果是一样的
    
  • tag选择器

    //java
    driver.findElement(By.TagName("div"));
    
    <!--html-->
    <div></div>
    
  • class选择器

    //java
    driver.findElement(By.className("class1"));
    driver.findElement(By.className("class2"));
    //注意这里是findElements多个s
    //此方法可以将所有class1都查询出来,返回一个List<WebElement>,会将下面两个div都返回。
    driver.findElements(By.className("class1"));
    
    <!--html-->
    <div class="class1"></div>
    <div class="class1 class2"></div>
    
  • css选择器
    有好几种写法

    //java
    driver.findElement(By.cssSelector("#divId"));
    driver.findElement(By.cssSelector(".class1"));
    driver.findElement(By.cssSelector("[name=divName]"));
    driver.findElement(By.cssSelector("div"));
    driver.findElement(By.cssSelector("html > body > div > a"));
    

    如果你熟悉css样式的写法的话,会对上面的内容比较清楚。

  • xpath选择器
    这个比较复杂,但是贼灵活

    //java
    driver.findElement(By.xpath("//*[@id=‘divId‘]"))
    driver.findElement(By.xpath("//*[@name=‘divName‘]"))
    driver.findElement(By.xpath("//input[@class=‘class1‘]"))
    driver.findElement(By.xpath("/html/body/form/span/input"))
    driver.findElement(By.xpath("//span[@class=‘class1‘]/input"))
    driver.findElement(By.xpath("//form[@id=‘form‘]/span/input"))
    driver.findElement(By.xpath("//input[@id=‘divId‘ and @name=‘divName‘]"))
    

以上api返回的都是一个元素,即:WebElement。如果匹配到多个元素那么默认返回第一个。想要获取多个元素,需要使用:driver.findElements(By....);此方法返回的是List<WebElement>

Selenium常用方法java版(工作笔记)

原文:https://www.cnblogs.com/Eastry/p/12887530.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!