• 5639
  • 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
4265

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

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

Архивные фотографии Алма-Аты из семейного альбома. Ностальгический пост

Архивные фотографии Алма-Аты из семейного альбома. Ностальгический пост

Насобирал разных фотографий про наш город, из семейного архива. Фотографии не от сканированные, а пересняты на телефон. Давно хотел выставить, но не решался) Сейчас уже мы все поменялись, уже...
Ispanec
22 февр. 2017 / 11:05
  • 11988
  • 23
«Ау, дорогой, проснись! 21 век на дворе давно!». Бездипломный-безработный-бесквартирный!

«Ау, дорогой, проснись! 21 век на дворе давно!». Бездипломный-безработный-бесквартирный!

Ну реально же, парни, откуда вы только беретесь такие простые, а? Я сейчас просто расскажу несколько историй из личного опыта, и судите сами – нормально это? Но для начала расскажу немного о себе...
socium_kzo
22 февр. 2017 / 11:38
  • 6837
  • 93
Вспомнились слова однокурсника: «Не завидую твоему будущему мужу»

Вспомнились слова однокурсника: «Не завидую твоему будущему мужу»

Среди моих знакомых есть одна милая девушка, она тоже молодая мама как и я. Очень открытая, видная, недавно вышла на работу. У нее счастливая семья и все, тьфу-тьфу, складывается хорошо.
Roza_pvl
19 февр. 2017 / 11:49
  • 5911
  • 43
Диана Шурыгина – жертва или змея? Девочка красивая, а весь мир судит её именно за это

Диана Шурыгина – жертва или змея? Девочка красивая, а весь мир судит её именно за это

Я совсем не смотрю передачу "Пусть говорят", слишком много ругани и негатива, но новость про какую-то девушку заполонила все мои социальные сети, я открыла youtube и посмотрела несколько передач...
Roza_pvl
22 февр. 2017 / 11:49
  • 4895
  • 33
Как купить свое жилье при зарплате в 100 тысяч тенге

Как купить свое жилье при зарплате в 100 тысяч тенге

Итак, по просьбам трудящихся и по крикам души коллективного бессознательного решила я написать пост на эту тему. Вводные данные: 1) нет имущества, которое можно продать для покупки собственного...
DanaJarlygapova
20 февр. 2017 / 16:17
  • 4163
  • 46
50 бизнес-встреч с лучшими предпринимателями Астаны. «Наш бизнес начинался как хобби»

50 бизнес-встреч с лучшими предпринимателями Астаны. «Наш бизнес начинался как хобби»

Друзья, представляю вашему вниманию второго героя моей рубрики "50 бизнес-встреч с лучшими (по моей версии) предпринимателей Астаны за 100 дней" - Асхата Солтанова!
Kultursyn
20 февр. 2017 / 12:46
  • 3954
  • 18
Я не националист, но выйду замуж только за казаха. 22 факта обо мне

Я не националист, но выйду замуж только за казаха. 22 факта обо мне

Всем доброго времени суток! Поскольку сейчас долгожданные выходные, я болею и имею полное право ничего не делать за чашечкой горячего чая, то решила все-таки написать этакий скромный пост о себе...
Sserikyzy
18 февр. 2017 / 16:35
Замуж в 27. Это как отправиться на войну, но без оружия

Замуж в 27. Это как отправиться на войну, но без оружия

Я очень долго думала писать данный пост или нет. Потому, что тема очень тонкая, возможно кого-то может задеть, а, возможно, наоборот кому-то откроет глаза. Тема замужества в каждом поколении была и...
Adilyan
21 февр. 2017 / 20:22
  • 3488
  • 18
Диана Шурыгина как один из PR-инструментов продвижения своего товара и бренда

Диана Шурыгина как один из PR-инструментов продвижения своего товара и бренда

Простому обывателю социальных сетей уже известно, что самой обсуждаемой персоной в последнее время является печально известная 16-ти летняя девушка из Ульяновска Диана Шурыгина.
tala03
21 февр. 2017 / 13:27
  • 3286
  • 13