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

Программирование на Python для тестировщиков
онлайн, начало 21 сентября
Школа тест-менеджеров v. 2.0
онлайн, начало 26 сентября
Логи как инструмент тестировщика
онлайн, начало 24 сентября
Школа для начинающих тестировщиков
онлайн, начало 24 сентября
Фотография

Проверка удаления элемента со страницы после нажатия на кнопку JavaScr

JavaScript Удаление элемента

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

#1 fauster01

fauster01

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

  • Members
  • Pip
  • 3 сообщений
  • ФИО:Иванов Игорь Матвеевич

Отправлено 09 Декабрь 2016 - 14:30

После нажатия на кнопку, пропадает элемент из DOM.
Написал цикл, который проверяет исчез ли элемент, однако что-то работает неправильно.
Элемент из DOM пропадает сразу после нажатия на кнопку, однако селениум "понимает", что элемент пропал спустя > 30 секунд.

Вот код цикла:

await (await hlp.visibleElement('//button[@class="ok"]')).click();
let staffInChat: WebElement[];
do {
    staffInChat = await hlp.driver.findElements(By.xpath('//div[contains(@class, "staff-user")]'));
}
 while (staffInChat.length !== 0);

PS

Написал этот цикл, дабы не использовать sleep и сократить время выполнения автотеста, в надежде, что код продолжит выполняться сразу после удаления элемента из DOM.
В чем проблема? Почему не работает как задумано?


  • 0

#2 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 09 Декабрь 2016 - 14:41

попробуй использовать

new WebDriverWait(driver, 3))
                .until(ExpectedConditions.invisibilityOfElementLocated(By.xpath(elXpath))

  • 0

#3 fauster01

fauster01

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

  • Members
  • Pip
  • 3 сообщений
  • ФИО:Иванов Игорь Матвеевич

Отправлено 09 Декабрь 2016 - 14:46

Мне не нужны аналоги, я хочу понять почему именно мой метод работает некорректно.


  • 0

#4 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 09 Декабрь 2016 - 14:50

ок , продолжай изобретать велосипед.

await чему равен ?


  • 0

#5 fauster01

fauster01

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

  • Members
  • Pip
  • 3 сообщений
  • ФИО:Иванов Игорь Матвеевич

Отправлено 12 Декабрь 2016 - 13:22

await это асинхронщина в js, который я использую.
PS
Проблему решил рекурсией.


  • 0


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




Темы с аналогичным тегами JavaScript, Удаление элемента

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

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

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