是否可以使@dataprovider名称通用而不是硬编码


Class1  
@DataProvider(name = "pdlogin")
public String[][] pdlogin() {

String data[][]= ExcelUtil.getTresExcelTestData(ExcelSheetNames.Sheet_Name_pdlogin);
return data;
}
class2
@Test(priority = 1, dataProvider = "pdlogin", dataProviderClass = LoginPage_DataProvider.class)
class3
@Test(priority = 1, dataProvider = "pdlogin", dataProviderClass = LoginPage_DataProvider.class)

这里我的@DataProvider的名称是";pdlogin";(它是硬编码的(并且我已经在许多@Test方法中使用了这个数据提供者名称,现在我想做的是,如果我将我的数据提供者的名称从"更改为";pdlogin";至";pdlogidataa";所以它必须在我使用它的任何地方都得到更改。目前,如果我更改数据提供者的名称,所以我必须去每个类并更改它,这是一个非常漫长的过程。我是硒的新手,请帮帮我。提前谢谢!

DataProviders具有更高的优先级。

你可以这样贴花:

protected final static String dataProviderName = "pdlogin";

并像这样使用:

@DataProvider(name = dataProviderName)
public String[][] pdlogin() {
String data[][]= ExcelUtil.getTresExcelTestData(ExcelSheetNames.Sheet_Name_pdlogin);
return data;
}

记住它必须是final

现在您可以将其保存在excel、csv、ini、文本文件中。并且可以读取。

相关内容

  • 没有找到相关文章

最新更新