实例:用Selenium和用Webdriver构建出来的测试工程

发表于:2015-2-26 10:08  作者:冯悦勤 梁琳   来源:51Testing软件测试网采编

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签:

  构建一个 WebDriver 测试工程
  WebDriver API 可以通过 Python、Ruby、Java 和 C#访问,支持开发人员使用他们偏爱的编程语言来创建测试。这里我们以 Java 为例。首先需要准备好自己的 Eclipse 环境,并在 selenium 的官方网站下载 Selenium 2 的 Jar 包。
  
图 2. WebDriver 测试工程
  清单 2. 使用 WebDriver API 的脚本 - 登录 SmartCoud iNotes
package demo;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;
public class WebDriverDemo {
public static void main(String[] args) {
//创建一个 firefox driver 实例
WebDriver driver = new FirefoxDriver();
//打开测试网址
driver.get("https://apps.na.collabserv.com/");
//定义用户名和密码文本框
WebElement username=driver.findElement(By.id("username"));
WebElement password=driver.findElement(By.id("password"));
//输入用户名和密码
username.sendKeys("autouser01@e3yunmail.mail.lotuslive.com");
password.sendKeys("test");
//点击 login 登录
WebElement login=driver.findElement(By.id("submit_form"));
login.click();
//设置页面等待直到出现 Mail 链接
(new WebDriverWait(driver, 500)).until(new ExpectedCondition<WebElement>(){
public WebElement apply(WebDriver dr) {
return dr.findElement(By.linkText("Mail"));
}
});
//登出
WebElement logout=driver.findElement(By.linkText("Log Out"));
logout.click();
//关闭浏览器
driver.quit();
}
}
  Selenium vs WebDriver
  从上述用 Selenium 和 WebDriver 构建的两个测试工程来看,WebDriver 工程在构建之后不需要其他的配置我们便可以直接使用,这一点和 Selenium 是截然不同的。因为 Selenium 还需要安装并启动 Selenium Server 才能运行测试程序。
  另外,我们可以看出 WebDriver 是基于面向对象的 API,它更多的是从用户角度出发。反之 Selenium 提供的是基于字典的 API,用户可以很方便的看到所以支持的方法。毋庸置疑的是,WebDriver 提供的 API 更为简洁,对用户更加的友好。但从另一个角度来看,就是用户不能很直观的看到 WebDriver 提供了哪些 API,可能需要通过官网提供的 JavaDoc的协助来找寻一些方法。

22/2<12

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2019, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道