Перейти к содержимому

Тестирование REST API
онлайн, начало 29 июля
Школа для начинающих тестировщиков
онлайн, начало 25 июля
Python для начинающих
онлайн, начало 26 июля
Автоматизация функционального тестирования
онлайн, начало 26 июля
Фотография

Не взаимодействует со вторым элементом из списка с одинаковыми class


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 Yoooo

Yoooo

    Новый участник

  • Members
  • Pip
  • 1 сообщений

Отправлено 30 Июнь 2019 - 20:03

На странице http://todomvc.com/e...les/backbone/#/ пытаюсь написать сценарий который удаляет второй из двух введённых в список элементов.

Я использую связку Selenium+Java.

 

При использовании  driver.findElementByClassName("destroy").click();  - клик срабатывает, но удаляется первый пункт, а нужно удалить второй

При использовании  driver.findElementsByClassName("destroy").get(1).click();  - появляется ошибка element not interactable
При использовании  driver.findElementByXPath("//section/ul/li[2]/div/button").click();  - тоже появляется ошибка element not interactable
 
Фактически, кнопка для удаления появляется после того, как навести на неё курсор.
Но использование 
Actions cursorOnDestroyButton = new Actions(driver);
List <WebElement> destroyList = driver.findElements(By.className("destroy"));
cursorOnDestroyButton.moveToElement(destroyList.get(1)).click();
тоже не помогло.
В таком случае никаких ошибок не появляется, но и с элементами ничего не происходит, не удаляется вообще ни первый ни второй пункт.
 

Подскажите, в чём здесь ошибка и как такое реализовать?

 


  • 0

#2 TatyanaV

TatyanaV

    Опытный участник

  • Members
  • PipPipPipPip
  • 383 сообщений
  • ФИО:Воробьева Татьяна


Отправлено 01 Июль 2019 - 07:54

Попробуйте между "cursorOnDestroyButton.moveToElement(destroyList.get(1))" и ".click();" добавить ожидание кликабельности.

Т.е. "переместить курсор", подождать пока кнопка станет кликабельной, кликнуть.


  • 0

#3 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 603 сообщений


Отправлено 01 Июль 2019 - 08:14

Возможно, крестик не сразу появляется при наведении на вторую плашку.

По этому, сначала наведите на плашку (css: .todo-list li:nth-child(2) )

Подождите немного (или более правильно - подождите появления крестика - css: .todo-list li:nth-child(2) .destroy)

И кликните уже по нему.


  • 0


Selenium 2.0: стартовый уровень
онлайн
Программирование на Java для тестировщиков
онлайн
Автоматизация функционального тестирования
онлайн
Selenium WebDriver: полное руководство
онлайн



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале