Используем custome profile в Selenium 2 и пару полезных ключей
Все кто использовали Selenium RC часто жаловались на его не стабильность и частые проблемы при запуске тестов не под firefox. И разработчики решили большую часть проблем переходом на использование WebDriver в Selenium 2. Но есть тонкости которые нужно знать при переходе с Selenium 1 на Selenium 2. В данной статье хочу рассказать про использования своего профайла для прогонки тестов.
Запуск Selenium 2 с указанием профайла для Firefox
В Selenium 1 все привыкли использовать -firefoxProfileTemplate, но вот в Selenium 2 он не работает! Хотя при старте демона он не ругается на этот ключ, скорее всего его оставили для совместимости, но и к профайлам он не применяется и при каждом запуске браузера, selenium будет создавать “свежий” профиль.
Ответ на то как запустить свой профиль, можно найти на Selenium wiki, но он поможет в основном Java разработчикам, для нас важно, что там есть описания свойств Firefox Driver в частности webdriver.firefox.profile.
Главное отличие webdriver.firefox.profile от firefoxProfileTemplate в том, что в firefoxProfileTemplate указывается путь к эталонному профайлу который при запуске браузера копируется, а в webdriver.firefox.profile указывается имя профайла который уже должен быть в списке профайлов.
Ну что же теперь мы можем запустить Selenium 2 с указание нашего профайла:
$ java -jar selenium-server-standalone-2.xx.x.jar -Dwebdriver.firefox.profile=NAME
Теперь главное убедитесь, что у вас существует профайл NAME в Firefox:
$ firefox -profilemanager
У Вас должно появится следующие окно:
Теперь у вас будет использоваться указанные профиль при запуске тестов.
Как запустить определенный Firefox если их установлено несколько в системе
В Windows системах я редко встречал, что бы было установлено несколько Firefox браузеров, но вот в nix такая практика встречается часто. Для “объяснения” Selenium 2, какой бинарник использовать, применяется ключ webdriver.firefox.bin. Так же это ключ вам поможет если Selenium пишет, что не может получить доступ к Firefox для выполнения тестов.
$ java -jar selenium-server-standalone-2.xx.x.jar -Dwebdriver.firefox.bin=/usr/firefox/firefox
Запуск Selenium тестов на неподтвержденных https (SSL) сертификатов
Для решения проблемы с https сертификатами нужно использовать ключ trustAllSSLcertificates. Данный ключ работает как на Selenium 1, так и на Selenium 2
$ java -jar selenium-server-standalone-x.xx.x.jar -trustAllSSLcertificates
Эпилог
И помните, что Ваше приложение, заслуживает защиту и профилактику заболеваний!