zoukankan      html  css  js  c++  java
  • selenium学习笔记——定位元素

      上一篇介绍了自己对selenium的理解以及测试环境的搭建~这篇主要介绍一下如何定位我们的页面元素。我们以火狐浏览器为例,其中火狐浏览器的版本采用较低的35.0.1版本,大家可以从网站上下载相应的版本。

      我们在对页面中元素进行定位之前,要先对浏览器进行操作:

     1 public class SearchTest {
     2     public static void main(String[] args) {
     3         // 1、打开浏览器——创建浏览器驱动
     4        WebDriver driver = new FirefoxDriver();
     5         // 2、智能等待10秒
     6       driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
     7         // 3、窗口最大化
     8       driver.manage().window().maximize();
     9         // 4、打开网页
    10         driver.get("www.baidu.com");
    11         // 5、定位界面元素,并对元素进行操作——输入内容sendKeys(),点击按钮click()
    12       driver.findElement(By.className("s_ipt")).sendKeys("李宗盛");
    13       driver.findElement(By.id("su")).click();
    14         // 6、关闭浏览器
    15         driver.close();
    16         // 7、关闭驱动
    17         driver.quit();
    18     }
    19 }

    其中,第五步的定位元素有八种方式:

    1. className:通过元素的class定位,findElement()方法表示查找元素,By.className()表示通过类名来定位界面上的输入框,sendKeys()表示向输入框中填入“李宗盛”     driver.findElement(By.className("spread")).sendKeys("李宗盛");
    2. id:driver.findElement(By.id("username")).sendKeys("admin");
    3. linkText:driver.findElement(By.linkText("淘宝网")).click();
    4. partialLinkText:driver.findElement(By.partialLinkText("淘")).click(); 当连接文本比较长,只写部分也可以
    5. name:driver.findElement(By.name("username")).sendKeys("admin");
    6. tagName:driver.findElement(By.tagName("a")).click(); 当页面中的标签名唯一才可以使用
    7. cssSelector:driver.findElement(By.cssSelector("input[type='button']")).click(); 定位到元素后,直接右键——选择css,复制css路径
    8. xpath:driver.findElement(By.xpath("//input[@value='查询']")).click();  一般来说,其他方式定位不到的时候,就可以用这种方式定位;但是如果所有页面元素都用这种方式定位,那么代码的可读性就会比较差

    这是元素的定位方式,代码中其他部分,是公共部分。我们类比较多的时候,就可以把这部分公共代码抽取出来。

    下一部分,介绍一些页面的高级操作

  • 相关阅读:
    返回一个一维整数数组中最大子数组的和02
    软工作业04四则运算网页版
    所有子数组的和的最大值
    学习进度表(第五,六周)
    学习进度表(第四周)
    四则运算2的单元测试
    《构建之法》阅读笔记02
    软工作业03
    单元测试练习
    学习进度表(第三周)
  • 原文地址:https://www.cnblogs.com/starstarstar/p/7587349.html
Copyright © 2011-2022 走看看