TestNG 6.14.3:不能在单个输入Excel工作表中使用多行记录运行多个测试
我有一个具有多种测试方法的Java类。作为输入文件,我有一个Excel输入工作表,该工作表在多行中具有多个数据集。 我可以使用较旧的testng版本6.9.10来运行测试,但是对于新版本(6.14.3),程序控制无法通过我的第一个测试方法,程序结束。
Java类:
Class A extends BaseScripObject{ //BaseScriptObject has code to initialize web driver, setting up row id of the record in the input sheet.
@Test(priority=1, enabled = true, description="Start of test")
public void start(){
System.out.println("I am in start method");
}
@Test(priority=2, enabled = true, description="Start of test")
public void doStuff(){
System.out.println("I am in doStuff method");
}
@Factory(dataProvider="getData", dataProviderClass = DataCollection.class)
public static Object[] createInstances(Map<String, String> data){
return new Object[] { new A(data) };
public A(Map<String, String> data){
super(data)
}
}
public class BaseScriptObject extends Assertion implemetns ReporterInfo{
protected Map<String, String> data;
protected int rowId = 0;
private String execVariant = "";
public BaseScriptObject(Map<String, String> data){
this.data = data;
this.execVariant = data.get("execVariant");
this.rowId = Integer.parseInt(data.get("rowId");
}
TestNG xml文件:
<test thread-count="0" verbose="2" name="My smoke test" time-out="'0" group-by-instance="true">
<parameter name="dataSheetName" value="myExcelSheet1"/>
<classes>
<class name="A">
</class>
</test>
Input excel sheet:
I can't attach my input sheet but my input excel sheet has a sheet named "myExcelSheet1" with two rows.
预期的行为:可以使用testng版本6.14.3来运行两个测试。
实际行为:只有第一个方法(start())运行,程序以testng版本6.14.3结尾。
testng的较早版本6.9.10没问题。