Клик не всегда работает в Selenium - PullRequest
2 голосов
/ 24 октября 2011

Я использую Selenium с PHPUnit, и иногда тест завершается неудачно с ошибкой, которая, по-видимому, вызвана тем, что браузер игнорирует вызовы clickAndWait. При выполнении теста команда clickAndWait проходит без особых задержек (даже если я установил большой тайм-аут), и следующее утверждение или доступ к элементу не выполняется; если я делаю снимок экрана, он показывает предыдущую страницу, как будто команда click вообще не выполнялась. Это происходит как со ссылками, так и с кнопками отправки (обе нормальные, без javascript: или аналогичного трюка), недетерминированные. Похоже, что это происходит чаще на некоторых контролях, чем на других (на многих это никак не влияет), и частота неудачных тестов кажется более или менее неизменной в краткосрочной перспективе, но сильно меняется в долгосрочной перспективе (иногда это 1 к 100 иногда 1 в 2). Я предполагаю, что на него влияет какая-то нагрузка на сервер, но не было видно какой-либо очевидной корреляции.

1 Ответ

2 голосов
/ 25 октября 2011

Я больше работаю с Selenium 2, но я тоже это заметил. В моем случае я подозреваю, что другие щелчки системы мешали Selenium (чисто предположения), поскольку я запускал тесты на своей машине.

Я решил, что вместо этого отправил нажатие клавиши Return . В большинстве случаев это эквивалентно щелчку, и по моему опыту созданы более стабильные тесты.

Небольшое предостережение в том, что эта техника перестала работать для меня после версии 2.3.0. Я отправил отчет об ошибке , если вы хотите посмотреть.

...