数据驱动测试Data-Drivern testing或者通俗的叫参数化测试是自动化测试中一种比较常见的场景。
本文介绍如何通过TestNG的@DataProvider实现Selenium Java架构中的参数化测试。
理解@DataProvider:
@DataProvider是TestNG中的一个注解,专门用于提供测试数据,此注解标注下的方法需要返回一个Object[][] 类型的值,此值类似于一个二维数组。
被@Test注解标注的方法可以用来接收上面Object[][]中的值,不过要在@Test中指明具体使用的是哪个DataProvider。
步骤:
1. 用@DataProvider注解下的方法提供数据,例:
@DataProvider(name = "provideUser")
public Object[][] provideData() {
return new Object[][] {
{ "username1", "pw1" },
{ "username2", "pw2" },
{ "username3", "pw3" }
};
}
上例中定义了一个叫“provideUser”的DataProvider,其下的方法提供了三组用户名与密码数据。
2. 在@Test的方法中定义要接收数据的参数,并指明要接收的DataProvider是哪个
@Test(dataPro