Попробовали phantomjs

Если ты еще не слышал про GhostDriver - имплементацию webdriver для headless браузера phantomjs, то обязательно посмотри презентацию Ivan De Marino. Если ты уже его используешь - интересно будет почитать в коментах - для каких задач и в какой конфигурации? А если слышал, еще не используешь, но хочешь попробовать - расскажу о небольшой особенности, которая стала стоппером для нас.

У нас тесты получают браузеры в хабе - достаточно распространённое и удобное решение - есть “облако” браузеров, которое легко расширяется. GhostDriver тоже можно подключить к хабу:

phantomjs --webdriver=8080 --webdriver-selenium-grid-hub=http://127.0.0.1:4444

Вот тут-то и начинается самое интересное. PhantomJs реализован таким образом, что имеет общее хранилище кук в рамках одного процесса. С одной стороны, это нормально, ведь это браузер, а в браузере куки общие. С другой стороны, даже когда ты закрываешь webdriver из теста, то в следующий раз получаешь сессию со старыми куками!

На эту тему висит открытый тикет в самом GhostDriver’e и в PhantomJS’e. А пока это не сделано, остаётся только использовать GhostDriver локально - с его скоростью работы можно за несколько минут прогнать приличное количество тестов.

comments powered by Disqus