• 5753
  • 12
  • 3
Нравится блог?
Подписывайтесь!

Тестирование ПО. Автоматизация тестирования с применением Selenium.

Selenium. Автоматизация тестирования веб-приложений - это просто.

 

Selenium – вещь абсолютно полезная, и даже необходима всем тем, кто занимается веб-разработкой. Что же это такое? Selenium -  это инструмент, с помощью которого можно автоматизировать тестирование веб-приложений. Зачем нужно тестирование объяснять не надо, а вот зачем может понадобится автоматизация этого процесса?

В автоматизации много плюсов и минусов, давайте коротко их осмотрим. Из плюсов – все тесты прогоняются машиной, исключен человеческий фактор. Далее – экономия времени на тестировании, то что раньше делали двое в течении дня теперь делается автоматически ночью. Есть минусы – много времени необходимо потратить на автоматизацию, и постоянно сопровождать все тест-кейсы. Если требования к продукты не меняются кардинально от сборки к сборке, то это не так критично. И опять же – человеческий фактор, машина все делает согласно алгоритму и может многое не заметить. Решать, нужна автоматизация или нет, нужно очень тщательно, чтобы труд не оказался пустым.

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

Selenium – бесплатный инструмент, чтобы начать с ним работать его достаточно просто скачать с сайта, никаких регистраций, и приступать к работе. Мы рассмотрим следующую связку Selenium + Eclipse, писать, соответственно, будем на Java. Можно также выбрать С#, PHP, Perl, Python, Ruby – к чему душа лежит, принципиальных отличий нет.

Для начала работы нам понадобится Selenium IDE – плагин для FireFox, установленный FireFox, Selenium RC – собственно само ядро. Ну и, как уже говоили, Eclipse.

Отсюда можно скачать Selenium, остальное найти труда не составит.

http://release.seleniumhq.org/selenium-ide/1.0.12/selenium-ide-1.0.12.xpi

http://selenium.googlecode.com/files/selenium-remote-control-1.0.3.zip

Для начала установим плагин в FF и запустим его. Вот что мы увидим на экране

Плагин представляет собой рекордер, и он поможет нам написать первые тесты не заморачиваясь. Раз уж мы на yvision, давайте сделаем тест, связанный с ним. Мы залогинимся и проверим, отображается ли наш логин на странице, в шагах это можно описать следующим образом:

  1. Открыть главную страницу yvi.kz
  2. По ссылке «Войти» перейти к странице входа
  3. Ввести логин и пароль, нажать на «Войти»
  4. Проверить, отобразился ли введенный логин на странице

Сразу после запуска рекордер по умолчанию запущен (красная кнопка в правом верхнем углу – начало записи), поэтому переходим в FF и руками выполняем все описанные действия. После входа на yvi правой кнопкой щелкнем на логине и в контекстном меню выберем команду assertTextPresent . После этого переключимся к Selenium IDE и увидим следующее:

Рекордер записал все наши действия, выполните логаут из yvi, и нажмите «Play». Мы увидим, как Selenium лихо логинится на yvi.

Давайте разберемся какие команды выполняются.

Open – открытие адреса, указанного в Target

ClickAndWait – клик по ссылке, следующий шаг выполняется, когда запрашиваемая страница полностью загрузится.

Type – в элемент Target печатается значение, указанное в Value

assertTextPresent – проверяет есть ли текст, представленный в Target

Как осуществляется поиск элементов на странице? Способов множество – самый простой по id, если id изменяется, то можно использовать xpath, зависит все от конкретной ситуации.

Таким образом мы записали наш тест, теперь настроим Eclipse. Распакуем архив с Selenium, нас пока интересует папка selenium-java-client-driver-1.0.1. Открываем Eclipse, создаем новый проект, откроем свойства проекта:

По кнопке «Add external JARs» добавим файл selenium-java-client-driver.jar из папки selenium-java-client-driver-1.0.1. Нажмем «Add Library» и добавим JUnit, выберем версию 3. Это необходимо, чтобы в дальнейшем можно было безболезненно перейти на другой фреймворк, например TestNG. Все, теперь наш проект готов принять в себя исходный код нашего теста.

В Selenium IDE  в меню «Options-Format» , выберем JUnit 3, скопируем код в Eclipse (предварительно создав новый класс) должно получится вот так:

Опять вернемся к Selenium RC. В папке selenium-server-1.0.3 создадим bat-файл, который будет запускать сервер Selenium:

start java -jar selenium-server.jar

Запускаем bat-файл, в сохраненном проекте в Eclipse щелкаем правой клавишей на названии проекта – «Run as – JUnit». Теперь запуск теста происходит из Eclipse, это позволяет нам использовать в создании тестов возможности языка Java.

Таким образом, мы в самом первом приближении познакомились с возможностями Selenium, записали и запустили наш первый тест с помощью Eclipse.

 
Андрей izzmajjra
2 июля 2011, 12:14
4343

Загрузка...
Loading...

Комментарии

faiwer
0
0
Как раз ищу что-то подобное. Мне необходима консольная софтина под линь, которая может эмулировать браузер ( в том числе - производить отправку файлов ). Не подскажите?
Впринципе Selenium вещь кроссплатформенная, написана на Java, так что скорее всего Вам она подойдет. Про отправку файлов можно почитать здесь www.autotestgroup.com Про эмуляцию браузера - Selenium точно сможет работать с FF. Вот с таким параметром будет запускаться FF - setUp("c:\\index.htm", "*firefox");
faiwer
0
0
Судя по вашим скринам она не консольная )
на скринах изображен рекордер, это плагин для FF, предназначен для записи кейсов, кончено, можно организовать на нем прогон тестов, но не очень удобно. Сервер Selenium запускается bat-файлом, и ждет когда на порт, который он слушает, придет команда. Выглядит примерно так (на Винде), можно впринципе консоль не открывать, процес тогда просто будет в памяти висеть:
an4ny044hOb6bNZ5hY78sBz21rA7J1.png
thx, попробую сию софтину )

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

До каких пор чиновники будут игнорировать защиту детей?

До каких пор чиновники будут игнорировать защиту детей?

До каких пор Уполномоченный по правам ребенка, как институт во всем мире стоящий на страже жизни и прав детей, в нашей стране будет выполнять представительские функции?
AliyaSadyrbaeva
вчера / 18:27
  • 4318
  • 5
«Алматы – город, летящий под откос», или Кто заказал утку у российского блогера

«Алматы – город, летящий под откос», или Кто заказал утку у российского блогера

Некий блогер Сергей Никитский неустанно пишет о Казахстане, Астане, Экспо и посвящает два материала Алматы, причём подчёркнуто называет город Алма-Ата.
Langdon
19 июля 2017 / 15:44
  • 3854
  • 58
Что происходит в казахстанской правоохранительной системе под видом борьбы с коррупцией

Что происходит в казахстанской правоохранительной системе под видом борьбы с коррупцией

За день до своей гибели прямо около памятника жертвам политических репрессий 1937-го Жампозов сказал жене, что он – жертва точно таких же репрессий.
openqazaqstan
24 июля 2017 / 10:18
  • 2980
  • 12
Книга, которая сэкономит вам 150 тысяч долларов и два года жизни

Книга, которая сэкономит вам 150 тысяч долларов и два года жизни

Автор утверждает, что программы МБА не дают никакого позитивного выхлопа, если ты уже не являешься владельцем или наследником прибыльного бизнеса. Знания МБА можно получить бесплатно, уверяет он.
Aks_Ras
19 июля 2017 / 16:28
  • 2879
  • 2
Зачем эмигрировать в Россию? Лично я никогда не понимал этой странной мечты

Зачем эмигрировать в Россию? Лично я никогда не понимал этой странной мечты

Некоторые мои знакомые, мечтают уехать в Россию и побыстрее получить гражданство. Кому мы там сдались? Есть замечательная поговорка: "Где родился - там и пригодился".
Washington
вчера / 12:15
  • 2733
  • 82
Госорганы, ответственные за жизни детей, хранят молчание. У них в отчетах все хорошо

Госорганы, ответственные за жизни детей, хранят молчание. У них в отчетах все хорошо

Вчера все информационные агентства страны передали сообщение, которое заставило забиться в ужасе сердца всех матерей страны. В мусорном контейнере города Сатпаев было обнаружено тело новорожденной девочки.
AliyaSadyrbaeva
19 июля 2017 / 11:06
  • 2394
  • 19
Почему путь к любимому Иссык-Кулю из года в год не становится легче

Почему путь к любимому Иссык-Кулю из года в год не становится легче

Минувшие выходные для казахстанских туристов, рвущихся от алматинской жары к иссык-кульской прохладе, снова обернулись настоящим кошмаром.
caravan_kz
19 июля 2017 / 18:39
  • 1914
  • 4
Мужчины Люксембурга и Казахстана: «У нас они уже в 35 добиваются статуса»

Мужчины Люксембурга и Казахстана: «У нас они уже в 35 добиваются статуса»

Что касается парней, так это вообще отдельная тема. Они для меня загадка. Уже год пытаюсь понять ход их мыслей. Для нас, казахов, немного сложно понять, почему человек в 35-36 лет, до сих пор не нашел смысла жизни.
AASh
24 июля 2017 / 15:19
  • 1882
  • 18
Наша новая рубрика «Топ-5»: самые красивые актрисы Казахстана

Наша новая рубрика «Топ-5»: самые красивые актрисы Казахстана

Решили сделать топ-5 красивых актрис Казахстана. Очень долго спорили о первых трех местах и даже чуть не подрались. Было очень тяжело выбирать.
asdbqwe
20 июля 2017 / 14:24
  • 1931
  • 41