Роботестер. Презентация участников

Preview:

Citation preview

Фреймворк автоматизации тестирования

web-интерфейсов RobotesterАлександр Толмачев

2

Команда проектаМенеджер проекта Руководитель разработки

Илья Кацев Артем ЕрошенкоРазработчики

Павел Галашин Артемий Чугреев Александр Толмачев

3

• Для каждого веб-сервиса есть проверки вне контекста:

Мотивация

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация• Для каждого веб-сервиса есть проверки вне

контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

3

Мотивация

3

• Для каждого веб-сервиса есть проверки вне контекста:• Ссылки• Текст страницы• Картинки• Верстка• Формы• …

• Цель: автоматизация проверок вне контекста

4

Задача• Разработать инструмент, который должен:

a. Производить обход страниц выбранного веб-сервиса

b. Автоматизированно выполнять не зависящие от контекста проверки на посещенных страницах

c. Предоставлять отчеты о результатах проведенных тестов

• Дополнительные требования:a. Гибкая конфигурируемостьb. Легкая расширяемость

5

Результаты предыдущих разработчиковПрототип:

• Тестирование форм• Показана решаемость задачи• Архитектурные проблемы• Невозможность дальнейшего развития

Генерация тестовых данных

Выполнение тестов

Анализ страницы

Виды тестов

Тесты

Статические ДинамическиеНе требуют

взаимодействия со страницей через

браузер

Требуют взаимодействия со страницей через

браузер

6

Выполнение статических тестов

Предоставление данных для теста

Выполнение теста(JUnit)

7

запрос

Выполнение динамических тестов

Генерация тестовых сценариев

Выполнение теста

(JUnit + Selenium)Анализ страницы

Генерациятестовыхданных

8

запрос

9

Анализ страницы

bla-bla-bla

bla-bla-blabla-bla-bla

• Выделение форм• Анализ типов полей текстового ввода• Определение зависимостей между элементами

формыСтрока поискового запроса

Поле для ввода логина

Поле для ввода пароля

Поля для ввода чисел

10

Генерация тестовых данных• Генерация данных для заполнения элементов

формы• Генерация тестовых наборов – сочетаний

различных вариантов заполнения отдельных элементов• Учет зависимостей между элементами• Ограничения по количеству наборов• Достижение определенного уровня покрытия

тестами• Генерация последовательности действий по тестовому

набору

11

Результаты• Прототип, разработанный предыдущими

разработчиками, доведен до стабильно работающей версии

• Активно ведется разработка новой версии – Robotester 2.0

• Нашли около 10 багов

12

Дальнейшие планы• Уменьшение времени работы• Ограничение нагрузки• Возможность написания плагинов• Возможность «общения» с роботом

Ваши вопросы

Спасибо за внимание!

Recommended