t.me/atinfo_chat Telegram группа по автоматизации тестирования

Не работают действия Actions последовательно

winium
java
webdriver
selenium
actions
Теги: #<Tag:0x00007f21d71f8ce0> #<Tag:0x00007f21d71f8b78> #<Tag:0x00007f21d71f89e8> #<Tag:0x00007f21d71f88a8> #<Tag:0x00007f21d71f8718>

(Pavel) #1

Всем привет!

Столкнулся с такой проблемой, что действия Actions не выполняются одно за другим.

Первый actions

public void callPropertiesClient(){
        if(isWaitElement(nameIconClientBy, 10, "",7)) {
            actions.contextClick(driver.findElement(nameIconClientBy)).perform();
            driver.findElement(contextMenuBy).findElement(propertiesBy).click();
        }
    }

Здесь кликаю правой кнопкой мыши на иконку на рабочем столе и нажимаю “Свойства”

Далее меняю свойство запуска программы и нажимаю ОК

public WebElement getElementTextObject(){
        return driver.findElements(textFieldBy).get(1);
    }

    public void setPropertiesClient(String textObject){
        getElementTextObject().clear();
        getElementTextObject().sendKeys(textObject);
    }

    public void clickOkPropertiesClient(){
        driver.findElement(buttonOkBy).click();
        if(isWaitElement(buttonContinuesBy, 10, "", 7)) driver.findElement(buttonContinuesBy).click();

    }

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

public void clickIconClient(){
        if(isWaitElement(nameIconClientBy, 10, "",7)) actions.doubleClick(driver.findElement(nameIconClientBy)).perform();
    }

Так вот этот двойной клики по иконке не отрабатывает. Хотя если запускаю просто двойной клик, то работает прекрасно. Как сделать, чтобы второй actions отрабатывал? Спасибо!


(Vasiliy Rakshin) #2

Попробуйте .build().perform();
И в if точно попадает? isWaitElement у вас выкидывает ошибку если элемента нет?


(Pavel) #3

Я пробовал и с if и без него, результат был один


(Pavel) #4

Не помогло. Что самое интересное, если вначале делаю двойной клик, а затем все остальное, то всё работает