Winium кликает на неправильный элемент

91
04 октября 2019, 21:40

Всем привет, я пытаюсь использовать Winium для автоматизации Java тестов для десктоп приложения. Локаторы подбираю с помощью тулы UiSpy, пытаюсь найти элементы через AutomationId, но когда нахожу элементы через UiSpy, они почему-то потом не подходят когда запускаю тест. Вот пример кода:

DesktopOptions options = new DesktopOptions();
    options.setApplicationPath("application_path");
    WiniumDriverService service = new WiniumDriverService.Builder()
            .usingDriverExecutable(new File("D:\\projects\\WiniumTest\\src\\main\\resources\\Winium.Desktop.Driver.exe"))
            .usingPort(9999)
            .withVerbose(true)
            .withSilent(false)
            .buildDesktopService();
    service.start();
    WiniumDriver driver = new WiniumDriver(new URL("http://localhost:9999/"), options);
    Thread.sleep(15000);
    String str = "path";
    WebElement passwordField = driver.findElement(By.id("JavaFX25"));
    WebElement connectButton = driver.findElement(By.name("Connect"));
    WebElement folderPahth = driver.findElement(By.id("JavaFX38"));
    passwordField.click();
    passwordField.sendKeys("admin");
    connectButton.click();
    Thread.sleep(5000);
    String value = driver.findElement(By.id("JavaFX46")).getText();
    Assert.assertTrue(value.contains("Directory successfully loaded..."));
    folderPahth.sendKeys(str);
    Thread.sleep(5000);
    System.out.println("Text: " + passwordField.isDisplayed());
READ ALSO
вызов метода внутри одного класса

вызов метода внутри одного класса

есть два метода в одном классе, первый ищет минимальное и максимальное значение в массиве public void min_max() , во втором нужно вызвать первый метод...

100
Как вывести в TableView субполе класса?

Как вывести в TableView субполе класса?

Есть класс Contract, у которого есть поле типа User

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

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

Перечитывая документацию так и не нашел как сделать подобный запрос в базу данныхПрошу помощи у более опытных товарищей

107