Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Помогите разобраться с кликом на элемент по xpath

robot-framework
selenium
Теги: #<Tag:0x00007f7b6462a638> #<Tag:0x00007f7b6462a4a8>

(Kuanysh Bekturganov) #1

Доброго времени суток товарищи! Помогите разобраться с кликом на элемент.
Есть элемент

Хочу делать double click на элемент:
double click element xpath = .//td[@class=“rtableHeader22” and text() = ‘Полное имя’]

Выкидывает ошибку:
WebDriverException: Message: Element is not clickable at point (437, 81). Other element would receive the click:

Как я понимаю ошибку, он говорит что указанный элемент не кликабельный, другой элемент(“headerTopPanel cursorHeader”) будет кликаться.

Если делать клик на элемент xpath = .//*[@class=“headerTopPanel cursorHeader”], то клик не по указанному тексту получится(например “Должность”).


(Василь Головчак) #2

Скоріше за все під час проходження тесту елемент .//td[@class=“rtableHeader22” and text() = ‘Полное имя’] є перекритий елементом .//*[@class=“headerTopPanel cursorHeader”], вебдрайвер старається емулювати дії користувача і відповідно користувач в цьому випадку прямо клікнути на елемент не може. Пройдіться дебагером і гляньте де знаходиться елемент під час тесту, якщо перекритий то скрольте сторінку в потрібному напрямку (нагугліть як це робиться в ведрайвері через джаваскрипт). Ну а сам даблклік робиться через клас Actions.


(t62) #3

Я зтикався з xpath для FireFox, честно кажучи особо досить не приємна штука.
до чого дійшов - ймовірність того що ви нажимаєте на кнопку до того моменту коли цього елемента іще не має , попробуйте зробити затримку перед натиском на 1-2 сек… мені допомогло.


(Vladislav Kulasov) #4

Тарас, абсолютно не правильно. Как сказал Василь, элемент перекрывается. Может там спин или еще какой то элемент. Я например жду окончания спина на своих страницах, а потом делаю действия.


(Taras) #5

цей ексепишн зовсім інше означає…ElementNotVisibleException для вашого випадку є, або NoSuchElementException вже на крайній випадок…елемент просто перекритий іншим елементом , скоріш за все треба клікати по одному з сусідніх (sibling) елементів, або parent/child