Selenium Actions не работает с версией 3.141.59 - PullRequest
4 голосов
/ 27 марта 2019

Основная проблема заключается в том, что мы пытаемся обновить нашу POM для использования версии 3.141.59 из Selenium. Во время нашего обновления мы заметили, что у нас есть несколько ошибок с Actions. После прочтения документации мы обнаружили, что:

"import org.openqa.selenium.interactions.Actions;" устарел и заменен на "import org.openqa.selenium.interactions.Action".

Мы хотим сохранить то же поведение и обновить наш код для работы с новым импортом. Мы не видели никакой новой документации о том, как на самом деле его использовать. Ниже приведен пример того, как мы использовали старые Действия.

try {
       Actions actions = new Actions(driver);
       actions.moveToElement(searchDocument);
       actions.sendKeys(PDF);
       Thread.sleep(1000);
       actions.build().perform();
    }  catch(Exception e) {
}

Мне удалось найти это примечание в журналах изменений Selenium:

Устаревший первоначальный API действий в пользу подхода W3C.

1 Ответ

1 голос
/ 28 марта 2019

Вот простой пример, если это полезно.

Actions actions = new Actions(driver);

// create the mouserover action
Action mouseOverOnElement = actions.moveToElement(linkMenu).build();

// get the back ground color before mouse over             
String bgColor = linkMenu.getCssValue("background-color");
System.out.println("Before hover: " + bgColor);

// perform the mouseover operation        
mouseOverOnElement.perform();    

// get the back ground color after mouse over       
bgColor = linkMenu.getCssValue("background-color");
System.out.println("After hover: " + bgColor);

Селен Док: https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/interactions/Action.html

...