3. Что такое Selenium?
это инструмент для автоматизированного
управления браузерами.
поддерживает десктопные и мобильные браузеры.
разработка Selenium поддерживается производителями
популярных браузеров.
Selenium - это настоящее и будущее автоматизированного
управления браузерами.
see more – seleniumhq.org
4. Selen framework
Система построения процессов автоматизированного
функционального тестирования на базе Selenium
. на популярном скриптовом языке, MySQL data storage
. легкий и имеет минимальное число зависимостей (не нужно xUnit и тп.)
. работает с WebDriver (aka Selenium 2) через Json Wired protocol
. настоящая мультипоточность выполнения тестов с использованием Selenium Grid
. простая структура тестов и отчетов по ним (тестовая конфигурация + сценарий)
. подробное логирование теста (real-time)
. использование best practice. (DSL, Page Object, Page Elements )
. ядро системы open source (Apache 2.0)
5. Selen архитектура
logger
php-webdriver-binding
Selenium Grid Hub
DSL addition
patterns
page objects selen base node
page config
storage class node
test processing
task processor selen manager
test suite processing
test suite planner reports
email || 3th part system
6. Selen: тесты
тест стоит из:
Файл тестовой Тестового
конфигурации
+ сценария
- несколько тестов образуют тестовый комплект
7. Selen: тесты
002.test
+ сценарии и конфигурации
Базовая секция
тестов в текстовом виде
Секция входных данных
+ конфигурация в INI формате
Доступные группы элементов
Соотношение элемент-группа
Описание свойств элементов
8. Selen: тесты
Уникальный номер теста
Название теста
Соответствующий тестовый сценарий
Количественный
критерий успеха
В основной секции определены базовые параметры и значения
переменных требуемые для запуска теста.
9. Подробнее о конфигурации
Имя параметра = значение
Уникальный номер теста
Параметр может принимать значение случайным образом из списка, значения
которого разделены символом «^^»
Допустимые варианты указаны в виде комментариев
Значением может быть и специальная функция, со
своими входными параметрами. В этом примере эта
функция возвращает случайный сгенерированный домен
в зоне RU (2 уровня)
Секция содержит массив разнообразных входных данных
10. Тестовый сценарий
В сценарии могут использоваться паттерны – часто повторяющие действия
вынесенные в отдельную часть
Важной составляющей сценария должна являться хорошая документированность
сценарий теста без page object
11. Тестовый сценарий
мое видение page object подхода
Выполняемые действия понятны по методам
Так было раньше, буквально месяц назад…
актуальный тестовый сценарий