您的位置:软件测试 > 开源软件测试 > 开源功能测试工具 > Selenium
自动化测试工具Selenium使用技巧
作者:网络转载 发布时间:[ 2016/11/17 11:51:09 ] 推荐标签:Selenium 功能测试

  前言
  Selenium是一个用于Web应用程序测试的工具,测试直接运行在浏览器中,像真正的用户在操作一样。因此使用Selenium则可以实现模拟真实用户测试web应用程序。
  如何使用
  从上面可以看到Selenium是用来测试web应用程序的,那么自然离不开浏览器。那么下面看看使用的步骤:
  选择浏览器
  对于IE浏览器和Chrome浏览器都需要下载driver。由于墙过于坚实,此处可提供chromedriver的一个下载地址
  firefox只需指定firefox.exe的路径
  添加maven依赖组件
  <dependency>
  <groupId>org.seleniumhq.selenium</groupId>
  <artifactId>selenium-java</artifactId>
  <version>2.42.2</version>
  </dependency>
  <dependency>
  <groupId>org.seleniumhq.selenium</groupId>
  <artifactId>selenium-chrome-driver</artifactId>
  <version>2.42.2</version>
  </dependency>
  <dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.11</version>
  </dependency>
  当然本文是以选择Chrome浏览器为例,如果你选择其他浏览器的话则需要添加其他浏览器的driver 包,例如selenium-firefox-driver 和selenium-ie-driver
  创建一个用例
  此处用Unit Test作为启动selenium的程序,同时也表示一个case。
  对于Chrome浏览器在执行case之前必须指定chromedriver.exe的路径
  System.setProperty("webdriver.chrome.driver", "D:\tool\chromedriver.exe");
  创建一个case
  创建WebDriver实例
  WebDriver webDriver = new WebDriver();
  指定url地址
  webDriver.get("http://zhangjun817.duapp.com");
  为了防止程序启动浏览器时响应超时,设置请求超时时间,此处以秒为单位
  WebDriverWait wait = new WebDriverWait(webDriver, 5);
  接下来可以调用webdriver里的findElement方法选择页面元素了,个人觉的这个方法跟js里的document.getElementBy方法很相似。的区别是需要给与传的参数为特定的类By对象,例如:
  //通过文字查找元素,并触发单击事件
  webDriver.findElement(By.linkText("Sign in")).click();
  //通过元素name查找元素并填充数据
  webDriver.findElement(By.name("username")).sendKeys("harry.zhang@buglife.cn");
  webDriver.findElement(By.name("password")).sendKeys("buglife.cn");
  //通过Id查找元素
  webDriver.findElement(By.id("login")).click();
  //通过class属性值查找元素
  webDriver.findElement(By.className("glyphicon-log-out")).click();
  当然也可以通过webDriver.findElements查询多个元素,此处不再一一列举

软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd