你可以有一个名为createData一个方法,你可以通过方法参数传递给它,这应该告诉你哪个测试方法,数据从该文件中获取的数据提供者。维护测试方法到测试数据文件的映射。让我知道这是否有帮助。 示例代码:
import java.lang.reflect.Method;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class TestClass {
@DataProvider(name="dp")
public Object[][] dp(Method method)
{
if(method.getName().equalsIgnoreCase("test1"))
return new Object[][]{{"dp1"}};
else if(method.getName().equalsIgnoreCase("test2"))
return new Object[][]{{"dp2"}};
else
return new Object[][]{{"default"}};
}
@Test(dataProvider="dp")
public void test1(String str)
{
System.out.println(str);
}
@Test(dataProvider="dp")
public void test2(String str)
{
System.out.println(str);
}
}
输出:
dp1
dp2
PASSED: test1("dp1")
PASSED: test2("dp2")
===============================================
Default test
Tests run: 2, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 2, Failures: 0, Skips: 0
===============================================
编辑:添加的样本代码。
嗨Mrunal ..谢谢你的回复..你能否请用例子来解释一下。 – 2015-04-01 04:54:16
@ShwetaKhandewalePathak我已经添加了一个示例工作代码。请通过它,让我知道这是否有帮助。 – 2015-04-05 05:23:21
@halfer我是否可以知道需要解决的问题? – 2015-10-25 15:34:06