TestNG的@DataProvider应用
先说遇到的问题:
- 将数据驱动方法和测试方法写在了两个类中,运行测试方法会被Skip。
错误代码如下
public class DataTest {
@Test(dataProvider = "range-provider")
public void testIsBetween(int n, int lower,int upper, boolean expected)
{
System.out.println("Received " + n + " " + lower + "-"+ upper + " expected: " + expected);
}
}
public class DataProviders {
@DataProvider(name = "range-provider")
public static Object[][] rangeData() {
int lower = 5;
int upper = 10;
return new Object[][] {
{ lower-1, lower, upper, false },
{ lower, lower, upper, true },
{ lower+1, lower, upper, true },
{ upper, lower, upper, true},
{ upper+1, lower, upper, false },
};
}
}