seleniumWebDriver自动化测试框架_01TestNG数据驱动测试
1.什么叫数据驱动:相同的测试脚本使用不同的测试数据来执行,测试数据和测试行为进行了完全的分离,这样的测试脚本设计模式称为数据驱动。
2.实施数据驱动测试的步骤如下:
(1)编写测试脚本,脚本需要支持程序对象、文件或者 数据库读入测试数
(2)将测试脚本使用的测试数据存入程序对象、文件或者数据库等外部介质中
(3)运行脚本,循环调用存储在外部介质的测试数据
(4)验证所有的测试结果是否符合期望的结果
3.使用TestNG进行数据驱动
测试代码:
public class demo1004 {
WebDriverdriver;
@DataProvider(name="searchWords")
publicstatic Object[][] words(){
returnnew Object[][]{{"蝙蝠侠","主演","迈克尔"},{"超人","导演","唐纳"},{"生化危机","编剧","安德森"}};
}
@Test(dataProvider="searchWords")
public void f(String word1,String word2,String word3) throwsInterruptedException {
driver.get("http://www.sogou.com");
Thread.sleep(3000);
driver.findElement(By.id("query")).sendKeys(word1+""+word2);
driver.findElement(By.id("stb")).click();
Thread.sleep(3000);
Assert.assertTrue(driver.getPageSource().contains(word3));
Thread.sleep(3000);
}
@BeforeMethod
public void beforeMethod() {
System.setProperty("webdriver.firefox.bin","D:\\firefox\\firefox.exe");
driver=new FirefoxDriver();
}
@AfterMethod
public void afterMethod() throws InterruptedException {
Thread.sleep(3000);
driver.quit();
}
}
执行结果:
PASSED: f("蝙蝠侠", "主演", "迈克尔")
PASSED: f("超人", "导演", "唐纳")
PASSED: f("生化危机", "编剧", "安德森")