Comments 16
Спасибо за полезную вещь.
Было бы очень интересно посмотреть на примеры «живых» тестов силениума. Вы их руками пишите или полуавтоматическим способом через браузер?
Было бы очень интересно посмотреть на примеры «живых» тестов силениума. Вы их руками пишите или полуавтоматическим способом через браузер?
Сам код тестов пишем руками, предварительно проверяя каждую команду в консоли (отдельно запущен selenium-server.jar, testserver, и manage.py shell). В браузере подсматриваем селекторы через Firebug. При определённой сноровке получается довольно быстро.
Вообще у Selenium есть такая штука как Selenium IDE, она может записывать тесты, но в своём формате насколько мне известно. Чтобы получить питон нужно наверное писать конвертер.
Вообще у Selenium есть такая штука как Selenium IDE, она может записывать тесты, но в своём формате насколько мне известно. Чтобы получить питон нужно наверное писать конвертер.
У нас как раз возникла необходимость написания подобных тестов для довольно большого js кода. Теперь будем знать с какого боку подойти. =)
Как-то пытался что-то сделать с Selenium IDE, но, если честно, не пошло. Да и как вы правильно заметили, нужно их еще и конверить потом. В любом случае, они не избавят от большого количества ручного труда.
Как-то пытался что-то сделать с Selenium IDE, но, если честно, не пошло. Да и как вы правильно заметили, нужно их еще и конверить потом. В любом случае, они не избавят от большого количества ручного труда.
Хм, интересно. Мы тоже пишем тесты вручную и как-раз с помощью Selenium IDE — там есть удобный список доступных команд, справка, и тут же можно выполнить созданные команды и посмотреть результат, а волшебная кнопочка Find Element позволяет проверить правильность селениумовского селектора.
Что бы IDE выдавал питон-код нужно выбрать в меню формат буфера обмена (на выбор есть несколько языков), далее если выделить команды и нажать Ctrl+C эти команды попадут в буфер обмена в виде питон кода. Так и копи-пастим из Selenium IDE :)
Что бы IDE выдавал питон-код нужно выбрать в меню формат буфера обмена (на выбор есть несколько языков), далее если выделить команды и нажать Ctrl+C эти команды попадут в буфер обмена в виде питон кода. Так и копи-пастим из Selenium IDE :)
Для firefox selenium IDE идут специальные конверторы генерируемого кода для нескольких языков в том числе и для Python


если я не ошибаюсь, то в Selenium IDE можно выбрать формат скрипта (там и Python, и Ruby, и PHP есть)
Интересная библиотечка, я в своё время пытался прикрутить выполнение Selenium тестов, что было достаточно геморно… В итоге теперь работает такая схема:
— nose для поиска и запуска тестов;
— django-sane-testing как плагин для nose и django-приложение, который запускает код приложения во время работы тестов (самая большая головная боль при запуске селениум-тестов).
Из плюсов такой схемы:
— nose и плагины для него, типа coverage и т.д.;
— можно использовать не стандартный django сервер (который плохо работает со многими параллельными запросами), а cherrypy.
— nose для поиска и запуска тестов;
— django-sane-testing как плагин для nose и django-приложение, который запускает код приложения во время работы тестов (самая большая головная боль при запуске селениум-тестов).
Из плюсов такой схемы:
— nose и плагины для него, типа coverage и т.д.;
— можно использовать не стандартный django сервер (который плохо работает со многими параллельными запросами), а cherrypy.
lettuce + splinter наше все
Может попродробнее расскажете про splinter? Он тоже браузер запускает, я правильно понимаю?
просто удобный враппер вокруг селениума
>Он тоже браузер запускает, я правильно понимаю?
ага, www.youtube.com/watch?v=Zx21QH6l1GQ
>Он тоже браузер запускает, я правильно понимаю?
ага, www.youtube.com/watch?v=Zx21QH6l1GQ
Оффтоп, конечно, но я искренне так рад django-неделе на хабре!
Sign up to leave a comment.
Интеграция Django и Selenium