Не находит элемент на станице при помощи Action

java
thucydides
webdriver
Теги: #<Tag:0x00007fedc7abdad0> #<Tag:0x00007fedc7abd850> #<Tag:0x00007fedc7abd5f8>

(s.alex) #1

Добрый день товарищи! Есть вопрос насчет нахождения элемента при движении мыши. Пример такой

Есть блок с пользователем, если навести на него, то появляется "плюс" для добавления этого пользователя в группу конференции см. скрин

Блок

При наведении на юзера

Значит воспользовался Action

public void setChoosePeopleConference() throws InterruptedException{

    Actions action = new Actions(getDriver());
    action.moveToElement(AddUser);
    Thread.sleep(2000);
    action.moveToElement(AddUserAdd);
    action.click();
    action.perform();

    clickOn(ApplyPeopleConference);
}

Локатор AddUser - наведение на блок
Локатор AddUserAdd - наведение на блок и клик на "+"

Вот .. суть проблемы ,при запуске теста, на первый элемент не находит, следовательно на "+" не кликает. Подскажите в чем может быть проблема


(5am) #2

как вариант - грязный хак: принудительное отображение кнопки "+" с помощью JS'а
а по теме: данные вопросы проще решаются, если поделиться HTML кодом / линкой на страницу (если она есть в паблике)


(s.alex) #3


(5am) #4

честно говоря, одного кода мало... хорошо бы паблик пример
попробуйте делать action.moveToElement(AddUser); на топовый div с юзером, т.е. на самый верхний div прямоугольной карточки юзера.
+ еще один из вариантов - навестить на элемент с помощью JS (document.getElementById("elementID").scrollIntoView()wink


(s.alex) #5

Решил проблему, оказалось что этот метод Action отрабатывает, но... следует правильно выбрать локатор, насколько я пробовал через firepath (firebug), не получилось, но благодаря Test Recorder получилось найти локатор cssSelector