2016-01-14 3 views
0

У меня есть DataProvider в TestNG. Он имеет список настраиваемых объектов под названием DataSheet []. Мне нужно передать его методу Test отдельно, но он возвращает массив.

Как настраиваемые объекты от TestNG Dataprovider

@DataProvider(name="accountsDetails") 
    public static Object[][] getData() 
    { 
    List<DataSheet> csvValues= CSVReaderUtils.getCSVValues(csvFilePath); 
    DataSheet[] array = csvValues.toArray(new DataSheet[csvValues.size()]); 

     return new Object[][]{{array}}; 
    } 

    @Test(dataProvider="accountsDetails") 
    public void loginTest(DataSheet data) 
    { 

    } 

Я не должен повторять в методе испытаний, можно вернуть? Как вернуться из метода поставщика данных.

Любая помощь очень ценится.

ответ

1

вы всегда можете сделать что-то вроде этого:

@DataProvider(name="accountsDetails") 
    public static Object[][] getData() 
    { 
    List<DataSheet> csvValues= CSVReaderUtils.getCSVValues(csvFilePath); 
    DataSheet[] array = csvValues.toArray(new DataSheet[csvValues.size()]); 
Object[][] obj=new Object[numberOfRows][numberOfColumns]; 
for(int i=0;i< array.length; i++) { 
obj[i][0]=array[i]; 
} 
     return obj; 
    } 

Пожалуйста, обратите внимание, это не тестируется код. но вы должны получить основную идею.

Смежные вопросы