Не в состоянии читать данные через селен из Excel, который использует формулу для генерации данных - PullRequest
0 голосов
/ 24 июня 2019

У меня есть Excel, который генерирует случайные буквенно-цифровые данные для поля Название поля - Адрес

Formula : =CHAR(RANDBETWEEN(65,90))& CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90))

Я делаю следующее: Чтение файла Excel

public static Object[][] getTestData(String sheetName) {
    FileInputStream file = null;
    try {
        file = new FileInputStream(TESTDATA_SHEET_PATH);
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
    try {
        book = WorkbookFactory.create(file);
    } catch (InvalidFormatException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    sheet = book.getSheet(sheetName);
    Object[][] data = new Object[sheet.getLastRowNum()] 
    [sheet.getRow(0).getLastCellNum()];
    for (int i = 0; i < sheet.getLastRowNum(); i++) {
        for (int k = 0; k < sheet.getRow(0).getLastCellNum(); k++) {
            data[i][k] = sheet.getRow(i + 1).getCell(k).toString();
        }
    }
    return data;
}

Выполнение операции по адресу

public void CustomerOperation(String Addres) {
    Address.sendKeys(Addres);
}

основной тестовый класс

public class CustomerManagement extends TestBase{
    LoginPage loginPage;
    CustomerManagementPage custManPage;
    TestUtil testUtil;

    String sheetName = "contacts";

    public CustomerManagement(){
        super();
    }

    @BeforeMethod
    public void setUp() throws InterruptedException {

        initialization();
        testUtil = new TestUtil();
        custManPage = new CustomerManagementPage();
        loginPage = new LoginPage();
        loginPage = loginPage.LoginOperation(prop.getProperty("username"),prop.getProperty("password"));
    }

    @DataProvider
    public Object[][] getCRMTestData(){
        Object data[][] = TestUtil.getTestData(sheetName);
        return data;
    }

    @Test(priority=1, dataProvider="getCRMTestData")
    public void CreateCustBusiness(String CustomerName, String EffectiveDate, String EstablishedYear, String Address){
        custManPage.CustomerOperation(CustomerName,EffectiveDate,EstablishedYear, Address);
    }
}

Ошибка:

СБОЙ: CreateCustBusiness ("TestCustomer", "20.06.2009", "1990.0", "CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65,90)) & CHAR (RANDBETWEEN (65, 90)) & CHAR (RANDBETWEEN (65,90)) ") org.openqa.selenium.WebDriverException: элемент не взаимодействует

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...