@DataProvider (name=getData)
public static Object[][] getData(){
Excelreader excel = new Excelreader("C:\\WorkspaceExcel\\Datasource.xlsx"); private static
String sheetName="SmokeTest"; // Test Data stored in a a table with
columns and rows. Ex. UserNmae and password are the columns and data
for them in rows private static String tableName="CreatePolicy";
// Some logic to read the data table store the data in a 2
dimentional array.
// Some logic by which I store the columns as Keys and data for them
as values in a HASHTABLE Return the hashtable
}
@Test (dataProvider="getData")
public void testData(Hashtable<String, String> data){
/* Logic to read an .xlsx file which has Snenario name, TestCase Name and its corespnding runflag. If the runflag is true i need to read the scenario name and testcase name from the .xlsx file. */
/* I need some logic to pass the ScenarioName (equivalent to Sheetname in DP) and TestCase Name (equivalent to datatable name in DP) which i am getting by reading the excelfile to DataProvider, so i can get the data which i need to execute the test case */
/*I am doing the above as part of Hybridframework, where i have Scenario, TC, Test step details in one excel sheet and data for each testcase in one more sheet */
}
Мой вопрос: Я хочу некоторую логику, поэтому, когда @Test выполняется, я должен динамически передавать данные Путь файла, SheetName, TableName, поэтому один и тот же поставщик данных может использоваться, и это даст мне другой набор данных для работы.Как позвонить DataProvider из моего метода испытаний с параметрами
Примечание: поставщик данных вернется в виде хеш-таблицы для данных, указанных в excel, в табличном формате с именем таблицы. Поэтому, если путь к каталогу, имя листа и имя таблицы передаются в dataprovider, тогда мой DP прочитает эту таблицу и вернет всю таблицу данных в виде хеш-таблицы.
Мне интересно, как мы можем достичь этого с помощью параметризации XML. Здесь, на листе excel, каждая таблица данных имеет несколько столбцов. Как и в случае с dataprovider, мы должны использовать соответствующее число (здесь его несколько) параметров в методе @Test, чтобы избежать использования хэш-таблицы. Таким образом, исходя из того, сколько параметров передается провайдеру данных, моему методу тестирования не нужно добавлять эти параметры. Мой DP вернет данные, относящиеся к числу столбцов и строк в таблице данных. Но моя единственная проблема заключается в том, как я могу динамически передавать имя листа и имя_базы данных, для которых DP возвращает данные. – user3660045