Прочитайте файл CSV и сохраните его в массив для использования в провайдере данных в TestNG - PullRequest
0 голосов
/ 16 мая 2019

Я сталкиваюсь с проблемой, когда пытаюсь сохранить данные CSV из файла CSV в массив, используя openCSV, который будет использоваться после этого через провайдера данных для запуска теста с этими данными. У меня есть два столбца в файле CSV, например, для ex и любезно проверьте ниже CSV файл содержит значение и выводится с кодом ниже

 DataFile
 Testname Data
 Testone  Text
 Testtwo  Text
 Testthree  Text

output: 
Testone
Text
testtwo
text
testthree
text


// Read CSV and save it into array method
final static List<String> list = new LinkedList<String>();
    private static final String FILE = "OMSInput.csv";
   public static String[] GetTestData() throws IOException {
    CSVReader reader = new CSVReader(new FileReader(FILE));
    String[] nextLine;
    boolean headersConsumed = false;
    while ((nextLine = reader.readNext()) != null) {
        if (!headersConsumed) { 
            headersConsumed = true;
            continue; 
        }
        list.add(nextLine[0]);
        //list.add(nextLine[1]);
    }
    final String[] Data = list.toArray(new String[list.size()]);
    for (String element : Data) {
        System.out.println(element);
    }
    return Data;
 }
}


\\ data provider method

@DataProvider
public Object[] TestData() throws IOException {

    Object Data[] = CSVFile.GetTestData();
    return Data;

}



\\ Passing DataProvider to method

@Test(priority = 2, dependsOnMethods = "Login", dataProvider =       "CPETestData")
public void Test(String Test , String modelname)

actual result: org.testng.internal.reflect.MethodMatcherException:          Data provider mismatch

expected result: to pass two value to Test method using data provider like
Testone Text
testtwo text
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...