是否可以为testng中共享相同数据提供者的不同测试方法使用不同的Excel工作表
答案 0 :(得分:1)
当然,让您的数据提供者阅读所有Excel电子表格,将它们组合成一个Object [] []并返回该对象。
答案 1 :(得分:1)
如果带有@DataProvider注释的方法接受java.lang.reflect.Method作为它的第一个参数,TestNG将传递当前正在执行的测试方法作为参数。例如
@Test(dataprovider="dp1")
public void test1(String str){
//test here
}
@DataProvider(name="dp1")
public Object [][](Method testName){
// testName will be the calling method
// testName.getName(); == "test1"
return new Object[][]{new Object[]{"Cedric"}};
}
使用此方法,您可以为每个测试方法创建工作表,并将其命名为方法名称。然后,您的数据提供者可以查找您的工作表,并返回所需的参数。