【发布时间】:2014-04-04 00:57:02
【问题描述】:
我在不同的浏览器中使用 TestNG 并行运行 Selenium Test cases。 (使用:Selenium-Grid) 我想在不同的浏览器中使用不同的(相同的变化)数据执行相同的测试用例。 例如。如果通过不同的浏览器“注册”,则不能使用相同的数据。就像会员在一个网站上注册过一样不能再注册。
Req:在 3 个浏览器 IE,FF,Chrome 中并行注册测试用例。我正在使用
@DataProvder(name="RegData",parallel=true)
public Object[][] getRegData() {
Object[][] data = {{"Max","Male","Italy"},{"James","Male","France"},{"Alex","Male","Spain"}};
return data;
}
此数据用作测试数据。但是发生的情况是每个测试用例都执行了 3 次。每个“数据”实例的每个测试用例。所以 3 个测试用例 x 3 个“数据”条目 = 9 次执行。每个数据实例只能使用一次。总执行次数应该只有 3
【问题讨论】:
-
您可以通过 DataProviders 和使用 TestNG 的并行选项进行尝试。据我所知......TestMethod 将被调用多次,因为它是并行的......它将使用不同的数据集执行......不确定它是否有帮助......
-
尝试了“并行”数据提供程序以及测试,但没有太大帮助。请求:在 3 个浏览器 IE、FF、Chrome 中并行注册测试用例。我正在使用 @DataProvder(name="RegData",parallel=true) public Object[][] getRegData(){ Object[][] data = { {"Max","Male","Italy"},{"James","Male","France"},{"Alex","Male","Spain"}};返回数据; } 此数据用作测试数据。但是发生的情况是每个测试用例都执行了 3 次。每个“数据”实例的每个测试用例。所以 3 个测试用例 x 3 个“数据”条目 = 9 次执行。每个数据实例只能使用一次。总执行次数应该只有 3