среда, 2 декабря 2009 г.

Selenium RC

Selenium RC (remote control) - утилита , написанная на java, основное назначение которой запускать по требованию автотеста нужный броузер и эмулировать деятельность юзера, выполняя команды этого автотеста. Благодаря java этот продукт кросплатформенный. Правда до определенной степени. Как только запущенному на Linux RC автотест "скажет" запустить IE - возможна нецензурная брань в консоли ))

Запускается север просто: java -jar selenium-server.jar

Последняя (на декабрь 2009 г) версия RC требовала джаву версии не мололже 1.5

Необходимые настройки в автотесте

Рассмотрим на примере сгенерированного Selenium IDE perl-ового скрипта:

my $sel = Test::WWW::Selenium->new( host => "127.0.0.1",
port => "4444",
browser => "*chrome",
browser_url => "test1.ru" );

то есть надо указать ip-адрес хоста, на котором должен быть запущен RC, tcp-порт на этом же хосте, тип броузера (что-то типа мнемоники) и тестируемый url.

С ip-адресом все ясно.

Порт:
Если при запуске RC явно не указать порт, то будет выбран порт 4444 по-умолчанию.

Чтобы запустить на нужном вам порту необходимо к команде запуска добавить ключ -port

java -jar selenium-server.jar -port 5555

если он будет не занят, то все должно быть ок.

Тип броузера:
*chrome - mozilla firefox
*opera - опера
*iehta - IE

запускать другие, не пробовал.

Итак, запустили сервер RC , прописали в автотесте нужные параметры и запускаем тест на выполнение.
Если все ок - RC сам запустит броузер, выполнит команды автотеста и завершит работу броузера.
Все просто и со вкусом.

Для своих повседневных "автоматических" целей я запускаю RC на виртуальной windows-машине - исключительно из необходимости тестирования под IE. Клиентская часть (набор автотестов) периодически запускается на Linux - машинах.

В следующих постах буду подробнее останавливаться на технических трудностях с моделированием той или иной деятельности человека в броузере. В частности , расскажу как решал проблемы с js.

1 комментарий: