WDandJS

Недавно столкнулся с проблемой, как и этот пацан. Суть в том, что после нажатия по линке, которая открывала всплывающее окно, выполнения, когда заходила в метод клик и уже больше не выходит… НИКОГДА! Коллеги индусы, решили данную проблему распусканием отдельного потока демона, в котором, и выполнялось нажатие на кнопку. Но такое решение мне не очень нравится, и приводило к невозможности завершить тест средствами TestNG по таймауту.

Вот моё, простое и элегантное решение:

  1. ((JavascriptExecutor)webDriver).executeScript("var arg = arguments[0]; setTimeout(function() {arg.click()}, 0);", element);

Работает великолепно! А суть идеи очень простая, мы нажимаем на элемент спомощью JS и делаем это асинхронно, что заставляет не ждать ответа, а продолжить выполнение программы. Автоматизатор! Учи JS!

Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс