Тестирование extjs-проектов через selenium

Post on 28-Nov-2014

2.686 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Материал со встречи в ноябре 2011 года.http://ap-test-team.blogspot.com/2011/10/blog-post.html

TRANSCRIPT

Seleniumинструмент для тестирования

Web-приложений

Компания «ТРС» Казань, 2011

Введение в Selenium

Инструмент для автоматизированноготестирования веб-приложенийЗапускается непосредственно в браузереПоддерживает тестирование AJAX приложенийFree и OpenSourceПоддерживается различными браузерами, платформами, языками программирования

Selenium не является

Инструментом Unit-тестированияИнструментом нагрузочного тестирования

Что такое Selenium?

Selenium это объектно-ориентированное

JavaScript приложение, которое может

анализировать файлы определенной структуры

для того, чтобы находить в них команды для

манипуляции браузером и команды для

выполнения определенных действий и проверок.

Поддержка Selenium

Selenium кросс-платформен и

поддерживается браузерами:

Microsoft Internet Explorer,

Opera,

Safari,

Google Chrome,

Mozilla Suite & Mozilla Firefox

Selenium IDE

В рамках проекта Selenium также выпускается

инструмент Selenium IDE представляющий собой

версию достаточно популярной библиотеки

Selenium в GUI-оболочке. Реализовано это в виде

расширения к браузеру Firefox, размером около

240 Кб, включая сам Selenium. Этот инструмент

позволяет записывать и воспроизводить скрипты,

представляющие собой обычные HTML-страницы

с одной таблицей, содержащей команды.

Структура команд Selenium

Command -> Target -> Value

Commands:

Actions (open, click, keyDown, keyUp,mouseMove,

captureEntirePageScreenshot,...)

Accessors (attribute, value, text, visible, ...)

Assersions (assert, verify, waitFor, ...)

Selenium locators

identifier = id

id = id

name = name

dom = JavaScriptExpression

xpath = XPathExpression

link = textPattern

css = cssSelectorSyntax

Пример простого теста

Выгрузка теста в PhpUnit

Selenium в PlayFramework

Запуск теста в PlayFramework

Cложности написания тестов Selenium в ExtJS

ExtJS использует сгенерированные ID, такие как "GEN-

345",т.е мы не можем конкретно указать их в нашем тест

кейсе.

Ext.form.CombBox-требует куда большего чем просто

клика во время теста.

Использование технологии AJAX на страницах.

Selenium советы

Избегать привязывание локаторов к тексту

интерфейса (только к ключевым полям!)

Избегать длинные XPath

Создавать библиотеки многократно-используемых

компонентов

Вести понятный лог выполения тестов и создавать

скриншот приложения при ошибке.

Советы Selenium ExtJS

Не использовать паузы (sleep)

Ожидать события: элемент появился на

экране, изменил состояние и т. д.

Использовать JavaScript выражения для некоторых

ExtJS компонентов (ComboBox,валидаторы, ...)

MouseDownAt вместо click (TabPanel, ...)

Cпасибо за внимание

Team Rocket ScienceКонтакты:Тел 89046760260E-mail:sergiohome@mail.ru

top related