среда, июня 26, 2013

SWD Page Recorder 0.1 alpha – инструмент записи PageObjects

Что это?

SWD Page Recorder (SWD читать как «SWOD/свод») – это кроссбраузерный инструмент для записи элементов веб-страницы с последующей генерацией PageObject- классов.

Зачем?

Не смотря на то, что тестировщики называют себя автоматизиторами, их работа – это в основном тяжелый и рутинный ручной труд. Одно из самых нудных занятий – это создание PageObject-классов для новой страницы веб-приложения. Все существующие инструменты разработчика (консоли, встроенные в браузер) – очень универсальны. Это заставляет тестировщика делать множество лишних действий для поиска и тестирования необходимых локаторов элементов, и кроме того, для каждого браузера такие инструменты очень сильно различаются. Например, для Internet Explorer вы не найдете такого разнообразия плагинов, как в FireFox.

SWD Page Recorder – это попытка создать универсальный инструментарий, который бы работал одинаково во всех браузерах: начиная от Internet Explorer и Firefox – и заканчивая браузерами на Android и iOS смартфонах.

Поиск и тестирование локаторов осуществляется посредством самого Selenium WebDriver, а локаторы, добытые таким путем, однозначно будут работать в авто-проверках с использованием Selenium WebDriver.


Кому это поможет?

Тестировщикам-автоматизаторам , которым надоело длительное выгрибание локаторов из HTML документа.

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

Функциональность

Причиной этого альфа релиза послужило то, что приложение SWD Page Recorder уже сейчас поддерживает минимальный набор фич, позволяющий конкурировать с существующими инструментами разработчика, встроенными в браузер.

Запуск браузера под Selenium WebDriver


Браузер можно запустить в режиме внутреннего или внешнего Selenium Server.
В первом случае,  браузер будет запущен локально без необходимости запускать любые другие утилиты. Список поддерживаемых браузеров будет значительно меньше, чем при использовании внешнего Selenium Server.

Запуск через Selenium Server позволяет запустить новый экземпляр браузера как локально так и удаленно, при этом значительно расширит варианты выбора браузера. Например, добавятся Android/Apple драйверы.
«Из коробки» будет работать только Firefox драйвер. Для того, чтобы заработали все остальные: IEDriver, ChromeDriver – следует скачать необходимые файлы драйверов по ссылкам с официальной страницы проекта Selenium и положить рядом с SwdPageRecorder.exe.

Тестирование локаторов

На вкладке «Locators», выберете наиболее удобный способ записи локатора (1). Для того, чтобы подсветить элемент в браузере, используйте кнопку «Highlight»(2). Для того, чтобы увидеть список элементов страницы, которые соответствуют введённому локатору, нажмите на кнопку «Test».
Результаты поиска будут отображены в списке элементов (3).

Двойной клик по элементу в списке – покажет его место нахождения в DOM-дереве страницы.

Одинарный клик по элементу DOM-дерева заполнит вкладку «HTML Property» атрибутами элемента.
Двойной клик – подсветит элемент в браузере.

Визуальный поиск
Запустив Визуальный Поиск (Visual Search), вы сможете отмечать необходимые элементы на самой веб странице и добавлять их в приложение.
Для того чтобы подсветить искомый элемент (серым фоном), зажмите клавишу Ctrl.
Для того чтобы вызвать форму добавления элемента в SWD Page Recorder – воспользуйтесь комбинацией Ctrl+правая кнопка мыши.
Элемент будет добавлен в дерево «Page Object», после чего его можно будет редактировать.



Редактирование и сохранение
Для добавления/редактирования нового элемента в дерево «PageObject» – нажмите кнопку “Update”.
Для сохранения всей страницы – в поле «PageObject File» просто введите новое имя страницы и нажмите на кнопку Save.
Для загрузки существующего файла страницы – просто выберете его из выпадающего списка «PageObject File».
Просмотреть папку с файлами PageObjects вы можете при нажатии кнопки “Files”.
SWD Page Recorder сохраняет файлы с расширением «*.pox».

Генерация кода PageObjects
Для генерации C#-класса страницы, перейдите на вкладку Source Code и нажмите кнопку Generate.

Качество продукта

У меня было немного времени на тестирование. Я не могу гарантировать то, что проект у вас запустится и то, что во время работы вы не столкнетесь с критическими ошибками и крэшами. Если подобные проблемы произойдут – прошу известить меня на странице гитхаба или тут, в комментариях.

Ссылки на скачивание и исходный код


Комментариев нет: