Перейти к содержимому

DmR

Регистрация: 27 дек 2011
Offline Активность: 18 янв 2012 16:02
-----

Мои сообщения

В теме: FirefoxDriver с Custom profile и Selenium IDE

03 января 2012 - 16:17

Еще хочу добавить, что как только тест создает инстанс вебдрайвера и порождает рц из него, то сразу можно открыть Selenium IDE и дальше, когда дойду до брейкпоинта, можно им пользоваться.

Здесь на лицо то, что после создания инстанса проходит короткое время, после которого уже нельзя открывать Selenium IDE. Около 2-3 секунд.

В теме: Отладка тестов на IE с помощью частицы Selenium IDE

28 декабря 2011 - 12:41

ну если всётаки хочется идти этим путём, то тогда как вариант можно использовать Selenium RC и его interactive mode)
запускаем сервер
java -jar selenium-server.jar -interactive
открываем новую сессию
cmd=getNewBrowserSession&1=*iexplore&2=http://www.google.com
метод open юзаем
cmd=open&1=http://www.google.com/webhp&sessionId=3ef951a2ba6a481888cd3f8012b65194
метод type
cmd=type&1=q&2=helloworld&sessionId=3ef951a2ba6a481888cd3f8012b65194
метод клик
cmd=click&1=btnG&sessionId=3ef951a2ba6a481888cd3f8012b65194
Подробнее


Спасибо за предложение,

Прочтите пожалуйста следующий случай.
У меня упал тест на ФФ.
Я запустил его в идее с бряком на месте преткновения. Для запуска использую профиль ФФ с аддонами фаербага, и Selenium IDE.
Тест дошел до точки преткновения (например он упал из-за того, что не увидел ожидаемого элемента, появление которого является результатом выполнения определенного действия).
Я увидел глазами, что элемент не появился. Видимо или баг или инструкция, вызывающая его появление, не отработала.
Разбираюсь в причине и выясняю, что не хватало, например, сделать focusWindow перед вводом текста в поле. Накидал в Selenium IDE соответствующие команды и они отработали верно (напомню, что это Selenium IDE запущенного тестом профиля ФФ, следовательно страница находиться в состоянии непосредственно перед падением и мне не нужно ждать, чтобы проверить эти команды).
Копировал эти команды в код и т.д. - дальше не интересно.

Теперь у меня упал такой тест только на ИЕ - элемент не появился, бага нет - на лицо, неправильно исполненная инструкция, а в ФФ все работает супер.

Что я делаю в таком случае?- тоже самое, что и в первом, только вместо Selenium IDE вношу новый вариант команд в код теста и запускаю его в идее, если этот вариант не отработал, то меняю код и запускаю снова и т.д. Порой это длится мучительно долго.

Думаю, что Вы понимаете, что данный совет подходит не в этом случае. Мне нужен исходный JS код команд селениума, чтобы ввести его через консоль девелопер тулзы.

В теме: Отладка тестов на IE с помощью частицы Selenium IDE

28 декабря 2011 - 12:24

Я извиняюсь за то, что был не исчерпывающи точен в описании своей проблемы. С вашего позволения, я добавлю несколько уточнений.

Я не запускаю тесты на Selenium IDE, для создания и прогона тестов использую следующее: Selenium WebDriver&RC, InteliJ IDEA + TestNG. Для прогона Тимсити, для сборки страниц и ядра - Maven.

Проблема у меня с отладкой тестов, упавших на IE, по причине того, что выполнение инструкций селениума на IE отличается.

Я вижу, что по этой теме отвечают достаточно творческие люди, и я попробую задать для вас творческий вопрос - как мне "на лету" (как я это могу сделать в ФФ с помощью Selenium IDE) с эмитировать команды селениума, чтобы понять, что они отработают правильно, когда запустяться билдом континиус интегрейшена?

Мне очень интересно ваше мнение, т.к. вы, очевидно, намного опытнее меня.

Заранее спасибо.

В теме: Отладка тестов на IE с помощью частицы Selenium IDE

28 декабря 2011 - 09:36

И, ребят, разве не интереснее найти способ решить проблему, чем объяснять почему эта проблема не проблема, давайте узнаем как и где достать JS код для команд селениума и как его запустить через консоль.

В теме: Отладка тестов на IE с помощью частицы Selenium IDE

28 декабря 2011 - 09:34

Лучше научитесь пользоваться developer tools для нахождения локаторов и будет вам счастье. В большнинстве случаев это вообще не нужно. Так как общая структура документа в основном во всех браузерах одинакова отображается

Вадим, спасибо большое, за ответ и за совет. Учиться пользоваться developer tools - это на самом деле правильно направление, и, таки да, это поможет мне найти локаторы и позволит сделать еще много замечательных вещей.
И действительно это не очень-то и нужно, учитывая, что в большинстве случаев(практически всегда) локаторы, отработавшие на ФФ, отработают и на ИЕ...
И, если бы команды селениум, отработавшие на ФФ, абсолютно всегда отрабатывали бы на ИЕ, я бы врядли запостил бы эту тему. К сожалению, когда в вашем проекте 1500+ тестов и ИЕ в скоупе, то часто возникает ситуация (особенно с JS), когда команда(или инструкция, но не локатор) не делает того что, вы от нее ожидаете на ИЕ. Но опыт подсказывает вам, что возможно комбинация других команд вам поможет. Вы наверное не раз встречали, да и скорее всего сами делали такое - if([brouser = ie]){[сделай это так]}else{[сделай это иначе]}.
Поэтому, прошу обратить ваше внимание на то, что проблема, обсуждаемая сейчас, не с локаторами, а с разным исполнением команд у ИЕ и остальных.

И если всё же вы хотите отлаживать тесты в IE юзайте Selenium RC и какую-нибудь IDE для отладки тестов.


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

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