Я использую JMeter с установленным jp @ gc WebDriver (v1.3.1) и Firefox -driver (версия Firefox: 31.0). Мой тест-план отлично работает, когда я выполняю его прямо из JMeter. Я вижу, как открываются браузеры, и могу следить за выполнением теста.
Когда я запускаю его через JMeter-Server, хотя при удаленном выполнении тест не воспроизводится в одном сэмплере со следующим сообщением об ошибке:
ОШИБКА - com.googlecode.jmeter.plugins.webdriver.sampler.WebDriverSampler: время ожидания истекло через 300 секунд ожидания кликабельного элемента: By.id: Wizard
Я настроил сэмплер для создания снимка экрана при ошибке, но это выглядит нормально. Сэмплер ожидает, пока элемент станет активным, прежде чем фактически пытаться щелкнуть его.
Странная вещь - как упоминалось выше - этого не происходит, когда я выполняю тест напрямую (то есть из графического интерфейса JMeter).
Одно отличие, которое я заметил для удаленного выполнения, заключается в том, что браузер фактически не открывается (как видно) на целевой машине. Тем не менее, я вижу, что процесс выполняется с параметром -foreground. Вероятно, это нормально, но для целей отладки я хотел бы посмотреть, что на самом деле происходит. Это может помочь определить, что отличается в этом сценарии.
Любые идеи о том, как я могу открыть браузер и в этом случае? Или, в качестве альтернативы, какие-либо идеи о том, чем отличается локальное и удаленное выполнение?
Изменить: я думаю, что отследил это до того, что размер браузера отличается при прямом и удаленном выполнении. Это стало очевидным после того, как я переключился с драйвера Firefox на драйвер Chrome. Тест по-прежнему не удался при удаленном выполнении, но на снимке экрана показаны как горизонтальная, так и вертикальная полосы прокрутки. Firefox этого не сделал, но скриншот, по-видимому, не показывает всей правды.