Я пытаюсь извлечь значения из листа excel с помощью поставщика данных с хэш-картой. Теперь я могу прочитать целые строки из листа excel. Лист Excel имеет 3 столбцы «TestcaseId», «Testdata», «scriptname». Здесь мне нужно передать имя сценария в качестве параметра к методу тестирования от поставщика данных. Пожалуйста, помогите мне в достижении этого. Ниже приведен код датапаравизора с использованием hashmapКак передать параметр из листа данных dataprovider методу теста
@DataProvider(name="cbndataprovider")
public static Iterator<Object[]> cbntestdata() throws IOException
{
List <Object[]> alist = new ArrayList<Object[]>();
OriginalExcelRW Excel = new OriginalExcelRW("F:\\anand_acer\\selenium\\cbnindia1\\Test_Data_Sheet.xlsx");
XSSFSheet s = Excel.Setsheet("Test_Data");
int rowcount = s.getLastRowNum();
for(int i =1;i<=rowcount;i++)
{
Object[] obj = new Object[1];
Map<String,String>hm=new HashMap<String,String>();
hm.put(Excel.Readvalue(s, 0, 0), Excel.Readvalue(s, i, 0));
hm.put(Excel.Readvalue(s, 0, 1), Excel.Readvalue(s, i, 1));
hm.put(Excel.Readvalue(s, 0, 2), Excel.Readvalue(s, i, 2));
hm.put(Excel.Readvalue(s, 0, 3), Excel.Readvalue(s, i, 3));
System.out.println(Excel.Readvalue(s, 0, 0)+"...."+ Excel.Readvalue(s, i, 0));
System.out.println(Excel.Readvalue(s, 0, 1)+"...."+ Excel.Readvalue(s, i, 1));
System.out.println(Excel.Readvalue(s, 0, 2)+"...."+ Excel.Readvalue(s, i, 2));
System.out.println(Excel.Readvalue(s, 0, 3)+"...."+ Excel.Readvalue(s, i, 3));
obj[0]=hm;
alist.add(obj);
}
return alist.iterator();
}
}
Что вы имеете в виду имени скрипта? Вы хотите передать 3 столбца + имя скрипта в свой тестовый метод? – CARE
Я передам все 3 столбца от поставщика данных, но выбор строки будет выполнен на основе имени сценария, которое я передаю от датапараудера, к методу тестирования, а столбец столбца имен включается в 3 столбца. Метод тестирования должен принимать только параметр имени сценария. – Ak17
, если ниже ответ отвечает на ваш вопрос, пожалуйста, отметьте вопросы как ответ – virusrocks