управляемый данными селен Java (с использованием файла Excel) - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь сделать данные, управляемые с помощью junit 4 с файлом Excel, моя задача - читать строку за строкой и проверять, как использовать имя и пароль один за другим, и использовать assert, чтобы узнать, правильно ли указаны имя пользователя и парольпройти тест и, если не получилось, получить ошибку, я сделал код функции, чтобы получить имя пользователя и пройти, но я не знаю, как передать каждую строку из файла excel в тест и получить проход ||не удалось .. добавив мой код для чтения Excel и тестовый класс, этот для чтения имени пользователя и передачи из файла Excel

    public static String[][] readExcelFile() throws EncryptedDocumentException, InvalidFormatException, IOException {
    Workbook workbook = WorkbookFactory.create(new File(SAMPLE_XLSX_FILE_PATH));
    Sheet sheet = workbook.getSheetAt(0);
    int rowCount = sheet.getLastRowNum();
    String [][]namePass = new String [rowCount][2];
    for (int i = 0; i < rowCount; i++) {
        Row row = sheet.getRow(i);
        for (int j = 0; j < row.getLastCellNum() ; j++) {
            namePass[i][j] =""+row.getCell(j);
        }
    }
    for (int i = 0; i < namePass.length; i++) {
        System.out.println(Arrays.toString(namePass[i]));
    }
    workbook.close();
    return namePass;
}

вот тестовый класс с функцией для чтения

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Enumeration;
import java.util.Properties;

import org.apache.poi.EncryptedDocumentException;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

@RunWith(Parameterized.class)
public class paramTest
{
    final static String dataFile = "C:\\Users\\david\\Desktop\\test.txt";
    private String words;

    public paramTest(String words)
    {
        this.words = words;
    }

    @Test
    public void verifyThing() throws Exception
    {
        System.out.println("key: " + words);
    }

    @Parameters
    public static String[][] readExcelFile() throws EncryptedDocumentException, InvalidFormatException, IOException {
        Workbook workbook = WorkbookFactory.create(new File(SAMPLE_XLSX_FILE_PATH));
        Sheet sheet = workbook.getSheetAt(0);
        int rowCount = sheet.getLastRowNum();
        String [][]namePass = new String [rowCount][2];
        for (int i = 0; i < rowCount; i++) {
            Row row = sheet.getRow(i);
            for (int j = 0; j < row.getLastCellNum() ; j++) {
                namePass[i][j] =""+row.getCell(j);
            }
        }
        for (int i = 0; i < namePass.length; i++) {
            System.out.println(Arrays.toString(namePass[i]));
        }
        workbook.close();
        return namePass;
    }

}
...