Иногда одна из машин, зарегистрированных в сетке селена, выключается или что-то подобное. Затем сетка начинает сообщать, что не может начать новую сессию. В таких случаях я хотел бы знать, какую машину сетка на самом деле пыталась выделить для сеанса (у нас есть ~ 70 машин, поэтому просматривать их одну за другой нецелесообразно). Эти данные где-то есть?
получить реальную машину, которую клиент получил из сетки селена
Ответы (3)
Я не знаю, как это сделать с помощью Selenium grid, но вы всегда можете иметь собственную систему мониторинга, чтобы точно знать, какая машина не работает должным образом. Я думаю о чем-то вроде сценария, который повторяет 70 ips, проверяя, прослушивает ли Selenium RC порт 4444.
Таким образом, вы обнаружите, что машина не работает, даже не дожидаясь выхода из строя селеновой сетки.
После долгих копаний ответ, к сожалению, таков: на сегодняшний день сетка не поддерживает никакого способа узнать это. Единственное, что нужно сделать, это подождать, пока они добавят это в свой API.
Я использую Ant для запуска своих тестов Selenium (на данный момент только для Windows), и обзор высокого уровня
i) Перезапустите Grid (используя psservice) ii) Завершите все cmd.exe на клиентских машинах (используя taskkill) iii) Запустите Selenium через пакетный файл на клиентской машине (используя psexec) iv) Запустите тесты Selenium
Поэтому любые мертвые машины и задача Ant не выполняются.
Однако мы очень рано внедряем Selenium, и наши тесты минимальны, и пока есть только один клиент (но в планах еще много!)