DevPoint: Selenium в тестировании веб-приложений / Блог компании Юнивеб / Хабр

Вы уже определились, что хотите работать с инструментом WebDriver?

Ваша команда уже внедрила этот инструмент, но вам очень сложно разобраться с тем, как его правильно использовать? Вы устали от ежедневных проблем и хотите возместить часы, проведенные на форумах в поисках решения проблем? У вас есть много вопросов, но не знаете, у кого спросить?

Практический тренинг для тестировщиков и разработчиков Java проектов по обучению работы с инструментом WebDriver призван решить ваши проблемы. Целых два дня вы не увидите ничего кроме флипчарта и среды разработки. Вы научитесь создавать проект по автоматизации Web приложений с нуля и строить на его основании хорошо поддерживаемую структуру тестов, применяя рефакторинг и ключевые дизайн паттерны.

Под чутким руководством тренера вы:

  • Научитесь работать с WebDriver API
  • Научитесь запускать и отлаживать тесты под разными браузерами
  • Увидите и попробуете решать нетривиальные проблемы при помощи WebDriver
  • Познакомитесь с основными паттернами проектирования тестов
  • Научитесь работать с динамическими страницами

Тренинг подразумевает 2 дня непрерывного программирования, потому запасайтесь терпением. Не ожидайте, что за 2 дня вы научитесь программировать на Java как гуру, даже 2-ух лет для этого недостаточно. Потому, чем лучше вы подготовитесь к тренингу, тем полезней он будет для вас! Почитайте основы программирования на Java в книгах, интернете. Ищите, практикуйтесь и готовьтесь к тренингу, где мы сможем полностью сфокусироваться на автоматизации тестирования web приложений с инструментом WebDriver.

Сегодня наткнулся на Selenium IDE, это плагин в Firefox, который позволяет атоматизировать тестирование работы сайта.
Т.к. плагин работает в браузере (похоже также будет работать и в Internet Explorer), то возможно полноценное тестирование, с учетом работы DHTML/AJAX.

Процесс настройки теста довольно таки прост:

  • Пишем в поле Base URL адрес откуда будем тестить.
  • В списке команд, в меню по правой кнопки мыши, выбираем Set / Clear Start Point
  • Переходим в браузер и делаем нужные нам действия, например заполняем форму логина и щелкаем «Вход»
  • В Selenium IDE нажимаем красную пимпу, типа «все, хватит»

Вот у нас и готов тест входа на сайт.

Можно нажимать кнопку старта для автоматического прохождения теста.
По коду получилось чтото вроде:

Код этот можно редактировать как вручную, так и мышой. Вариантов команд там порядочно, куча различных действий, assert'ов, поиска по XPath и пр., этого наверное хватит для основных тестов.
В идеале чтобы все это потом из Ant'а запускать и писать отчет в общий XML юнит-тестов, но, похоже, это пока неосуществимо. Хотя можно пользовать Jakarta Cactus для автоматического тестирования контроллеров из Ant'а, и переодически самому запускать тест взаимодействия с пользователем через Selenium.
Надо попробовать на текущем проекте, уж явно будет лучше чем самому постоянно баловатся приложением.

Tweet

Posted inWeb

Материал из AOW

Перейти к: навигация, поиск

Существует три вида команд : Действия, Проверки и Ожидания.

Действия – функциональное действие над тестируемым веб-приложением в браузере. Например, заполнение полей, нажатие на кнопку и другие;

Проверки – выполнение проверок на тестируемой странице. Например, проверка того, что определенное поле формы имеет указанное значение, или проверка заголовка окна;

Ожидания – организация как, сколько и какое событие Selenium будет дожидаться (ожидания загрузки страницы, ajax и т.д.).

Список команд и их значения

assert* — «Утверждение» — это проверка, если которая не проходит, тест завершается с ошибкой.

verify* — «Проверка» — это проверка, если которая не проходит, тест продолжает работу
Проверки типа «assert» используются для критичных проверок, которые если не проходят, то нету смысла вообще продолжать тест. Проверки типа «verify» используются для некритичных элементов.

store* — Сохранить значение элемента

wait* — ожидание какого-либо события, например появления элемента

open – открыть страницу в браузере по определенному адресу.

click – произвести нажатие по элементу страницы.

type – ввести значение в текстовое поле страницы. Пример использования – selenium.Type(«id_TextField_1», «test»);

select – выбрать значение из выпадающего списка. Пример использования – selenium.select (TimeEntryTaskList, «Activity1») .

selectWindow – переключить фокус на другое окно. Пример использования – selenium.selectWindow(«id_dashboard»);

getTitle – возвращает Title для текущей страницы. Пример использования – selenium.GetTitle();

getValue – возвращает значение элемента страницы. Пример использования – selenium.GetValue(«id_TextBox1»);

goBack – вернуться на предыдущую страницу. Пример использования – selenium.GoBack();

close – закрыть текущее окно. Пример использования — selenium.Close().

verifyLocation / assertLocation – проверить адрес текущей страницы.

getAlert — эмулирует нажатие на кнопку ОК (окно alert’а не появляеться)
verifyAlert(pattern) — проверяет что текст соответствует паттерну и нажимает ОК
assertAlert — проверяет что текст соответствует паттерну (если нет тест фейлиться) и нажимает ОК

http://devtest.ru/static/3/http://ramech.net/docs/seleniumhttp://translated.by/you/selenium-reference/?page=1

Добавить комментарий

Закрыть меню