运行 testng 中不同数据提供者的相同测试
running same test with different dataprovider in testng
例如:
- 数据提供者 1:dataA
- 数据提供者 2:dataB、dataC
- 数据提供者 3:dataD、dataE、dataG
所以我的测试接受了一个数据提供者。但我希望它根据测试组为不同的测试类型选择不同的数据提供者。例如,如果我是 运行ning 组 "smoke" 那么我想使用数据提供者 1,如果我是 运行ning 组 "sanity" 那么我想 运行数据提供者 1 和数据提供者 2,如果我是 运行ning 组 "regression" 那么我希望它成为 运行 数据提供者 1、2 和 3。
这可能吗?如果可以,请提供信息或向我指出文档或可能有帮助的内容。
目前我的工作是对每个组进行 3 种不同的测试,然后我可以 select 使用哪个数据提供者。我也可以结合数据提供者。
我的解决方法的问题是所有 3 个测试都完全相同,不同的是组和数据提供者。
谢谢!
如何使用一个数据提供者 returns 不同的数据 - 基于当前测试组:
@DataProvider(name = "myDataProvider")
public Object[][] testDataProvider(ITestContext context) {
List<String> includedGroups = Arrays.asList(context.getIncludedGroups());
if(includedGroups.contains("myGroup")) {
return dataA;
}
else if (includedGroups.contains("myOtherGroup")) {
return dataBC;
}
//...
}
例如:
- 数据提供者 1:dataA
- 数据提供者 2:dataB、dataC
- 数据提供者 3:dataD、dataE、dataG
所以我的测试接受了一个数据提供者。但我希望它根据测试组为不同的测试类型选择不同的数据提供者。例如,如果我是 运行ning 组 "smoke" 那么我想使用数据提供者 1,如果我是 运行ning 组 "sanity" 那么我想 运行数据提供者 1 和数据提供者 2,如果我是 运行ning 组 "regression" 那么我希望它成为 运行 数据提供者 1、2 和 3。
这可能吗?如果可以,请提供信息或向我指出文档或可能有帮助的内容。
目前我的工作是对每个组进行 3 种不同的测试,然后我可以 select 使用哪个数据提供者。我也可以结合数据提供者。
我的解决方法的问题是所有 3 个测试都完全相同,不同的是组和数据提供者。
谢谢!
如何使用一个数据提供者 returns 不同的数据 - 基于当前测试组:
@DataProvider(name = "myDataProvider")
public Object[][] testDataProvider(ITestContext context) {
List<String> includedGroups = Arrays.asList(context.getIncludedGroups());
if(includedGroups.contains("myGroup")) {
return dataA;
}
else if (includedGroups.contains("myOtherGroup")) {
return dataBC;
}
//...
}