25
atdays.com Совершенный тестовый фреймворк Андрей Иваровский, runteo.ru

Совершенный тестовый фреймворк

Embed Size (px)

DESCRIPTION

Совершенный тестовый фреймворк, Андрей Иваровский Идеальный тестовый фреймворк – миф или реальность? Поиск “философского камня”. Расширяемость – как впихнуть “невпихуемое” и объять необъятное? Кейворд-дривен, дата-дривен – извращения или путь к совершенству? Многопоточность – мультиплексор или “каждой твари по паре”? Обо всем этом, а также о кое-чем еще я расскажу в своем докладе.

Citation preview

Page 1: Совершенный тестовый фреймворк

atdays.com

Совершенный

тестовый фреймворк

Андрей Иваровский, runteo.ru

Page 2: Совершенный тестовый фреймворк

atdays.com #atdays

О докладчике:

Андрей Иваровский

7 лет в QA

QA Team Lead

Владелец компании по

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

и тестированию

производительности

http://runteo.ru

2

Page 3: Совершенный тестовый фреймворк

atdays.com #atdays

С чего начать?

1. Философский камень автоматизации

2. Наставник (учитель)

3

Page 4: Совершенный тестовый фреймворк

atdays.com #atdays

Философский камень автоматизации

Тестовый фреймворк, который можно будет применить на любом проекте

4

Page 5: Совершенный тестовый фреймворк

atdays.com #atdays

Наставник (учитель)

Наставник, который покажет правильный путь, обучит всем тонкостям профессии

5

Page 6: Совершенный тестовый фреймворк

atdays.com #atdays

Что делать?

Есть способ создания

совершенного

фреймворка

для конкретного

проекта!

6

Page 7: Совершенный тестовый фреймворк

atdays.com #atdays

Что можно взять полезного из этой презентации?

1. Правила создания фреймворка

2. Пример архитектуры фреймворка

7

Page 8: Совершенный тестовый фреймворк

atdays.com #atdays

Каким должен быть фреймворк?

1. Простым

2. Масштабируемым

3. Модульным

4. Должен использовать шаблоны для

конкретных задач (модулей)

8

Page 9: Совершенный тестовый фреймворк

atdays.com #atdays

Простота решения

Усложнение фреймворка влечет за собой издержки времени на

разработку тестов

9

Page 10: Совершенный тестовый фреймворк

atdays.com #atdays

Простая архитектура

10

Тесты

Запуск

Ресурсы Логгер

Данные Интерфейс

SUT

Page 11: Совершенный тестовый фреймворк

atdays.com #atdays

Масштабируемость

Фреймворк должен быть масштабируемым!

11

Page 12: Совершенный тестовый фреймворк

atdays.com #atdays

Структура модуля

12

Интерфейс

Реализация

№1

Реализация

№2

Реализация

№3

Реализация

№4

Page 13: Совершенный тестовый фреймворк

atdays.com #atdays

Структура теста

13

Page 14: Совершенный тестовый фреймворк

atdays.com #atdays

Структура теста

14

Оболочка №4

Оболочка №3

Оболочка №2

Оболочка №1

Тест

Базовый класс

Page 15: Совершенный тестовый фреймворк

atdays.com #atdays

Модульная архитектура

15

Page 16: Совершенный тестовый фреймворк

atdays.com #atdays

Стандартный набор модулей

16

Тесты

Запуск

Ресурсы Логгер

Данные Интерфейс

SUT

Page 17: Совершенный тестовый фреймворк

atdays.com #atdays

Применение шаблонов

17

Page 18: Совершенный тестовый фреймворк

atdays.com #atdays

Шаблон модуля запуска

18

Модуль

непрерывной

интеграции

Модуль сборки

Модуль

организации

тестов

(Ant)

(TestNG, Nunit)

(SetUp, TearDown)

Page 19: Совершенный тестовый фреймворк

atdays.com #atdays

Шаблон диспетчера ресурсов

19

Веб-сервер

Диспетчер

База данных

(Tomcat, Apache)

(Servlet, SOAP Service)

(Oracle, MySQL)

Page 20: Совершенный тестовый фреймворк

atdays.com #atdays

Шаблон модуля отчетности

20

Методы для

логгирования

Базовый класс

Singleton

(info(), fail(), error(), warn())

Page 21: Совершенный тестовый фреймворк

atdays.com #atdays

Шаблон модуля данных

21

Интерфейс Генератор

случайных

чисел

Excel

XML

(Keyword-

Driven)

Page 22: Совершенный тестовый фреймворк

atdays.com #atdays

Шаблон драйвера SUT

22

Интерфейс Selenium

WebDriver

SOAP Unit

AutoIT

Page 23: Совершенный тестовый фреймворк

atdays.com #atdays

Основные принципы

1. Простота решения

2. Масштабируемость

3. Модульная архитектура

4. Применение шаблонов для

конкретных задач (модулей)

23

Page 24: Совершенный тестовый фреймворк

atdays.com #atdays

Выводы

Совершенный фреймворк не

существует в природе

Есть метод создания совершенного фреймворка для конкретного проекта

24

Page 25: Совершенный тестовый фреймворк

atdays.com #atdays

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

Email: [email protected]

Skype: andrew.ivarouski

Mobile: (+375 29) 705 00 28

web: www.runteo.ru

25