AT.01.001 Процесс автоматизации
Процесс
Автоматизация
Цели
Риски
Вспомогательное средство
Как это работает ?
Фазы автоматизации
Анализ
Разработка
Тестирование
Утопия
Внедрение
Преимущества интеграции
Поддержка
Взаимодействие с разработчиками
API
Взаимодействие
Взаимодействие
Взаимодействие
Детальный цикл
Проблемы автоматизации
Зачем нужен Framework?
Подходы для построения фреймворков
Keyword-driven подход
Data-driven подход
Функциональная декомпозия
Типичная схема фреймворка
Слой графических элементов
Слой бизнес функций
Слой утилит
Многообразие средств автоматизации
Как правильно выбрать средство ?
Преимущества коммерческих инструментов
Thanks for Your Attention

Процесс автоматизации

1. AT.01.001 Процесс автоматизации

Resource Development Dep.
Автор: Kiryl Zayets
2011 © EPAM Systems, RD Dep.

2. Процесс

2011 © EPAM Systems, RD Dep.
2

3.

Процесс в информационных технологиях
2011 © EPAM Systems, RD Dep.
3

4.

Процесс автоматизации
2011 © EPAM Systems, RD Dep.
4

5. Автоматизация

2011 © EPAM Systems, RD Dep.
5

6. Цели

Оптимизировать ресурсы
Уменьшить время затрачиваемое на тестирование
Упростить профессиональную жизнь специалисту по тестированию
Повысить эффективность сложных тестов
Увеличить тестовое покрытие
Уменьшить бюджет
Исключить человеческий фактор
2011 © EPAM Systems, RD Dep.
6

7. Риски

Выбор средства автоматизации
Оценка необходимости автоматизации тестов
Затраты времени на автоматизацию
Затраты времени на отладку и поддержку
Бюджет: специалисты, лицензия на средство
2011 © EPAM Systems, RD Dep.
7

8.

Автоматизация тестирования
+ Test Automation
tool
2011 © EPAM Systems, RD Dep.
8

9. Вспомогательное средство

2011 © EPAM Systems, RD Dep.
9

10. Как это работает ?

2011 © EPAM Systems, RD Dep.
10

11. Фазы автоматизации

Анализ
Разработка
Тестирование
2011 © EPAM Systems, RD Dep.
Внедрение
Поддержка
11

12. Анализ

Что нам необходимо сделать?
покрытие функционала тестами;
Как мы будем это делать?
Выбор средства автоматизации;
Выбор процесса;
Кто и когда?
Разработка плана;
2011 © EPAM Systems, RD Dep.
12

13. Разработка

Framework
Легко добавлять новые тесты
Scripts
Независимость от входных данных
Разделение на слои
Сильное логирование и отчетность
2011 © EPAM Systems, RD Dep.
13

14. Тестирование

Who will be control this process ?
2011 © EPAM Systems, RD Dep.
14

15. Утопия

2011 © EPAM Systems, RD Dep.
15

16. Внедрение

Автоматическое обновление версии проекта из репозитория
Автоматическое обновление скриптов из репозитория
Компиляция проекта и скриптов
Автоматический запуск в заданное время
Подготовка окружения
Установка приложения
Тестирование
Построение отчета
Отправка результатов всем заинтересованным людям
Непрерывная интеграция
2011 © EPAM Systems, RD Dep.
16

17. Преимущества интеграции

проблемы интеграции выявляются быстро, что оказывается дешевле;
немедленный прогон модульных тестов для свежих изменений;
постоянное наличие текущей стабильной версии;
немедленный эффект от неполного или неработающего кода приучает
разработчиков к работе в итеративном режиме с более коротким циклом.
Недостатки интеграции
затраты на поддержку работы непрерывной интеграции;
потенциальная необходимость в выделенном сервере под
нужды непрерывной интеграции;
2011 © EPAM Systems, RD Dep.
17

18. Поддержка

Непрерывная интеграция
Система контроля дефектов
Взаимодействие «лицом к лицу»
CI
AT
QA
DEV
SVN
2011 © EPAM Systems, RD Dep.
18

19. Взаимодействие с разработчиками

• Непрерывная интеграция;
• Требования к продукту;
• Изменение графического интерфейса;
• Усовершенствование API;
2011 © EPAM Systems, RD Dep.
19

20. API

2011 © EPAM Systems, RD Dep.
20

21.

Взаимодействие с тестированием
Автоматизация функциональной области:
Приемочное тестирование;
Регрессионное тестирование;
Тестирование производительности
Тестовые
сценарии
Автоматизация
2011 © EPAM Systems, RD Dep.
Тестовые
скрипты
21

22. Взаимодействие

Помощь от специалистов по тестированию:
Создание тестовых сценариев;
Решение проблем при прохождении тестов;
Занесение дефектов и отслеживание;
2011 © EPAM Systems, RD Dep.
22

23. Взаимодействие

Разработка
Тестирование
2011 © EPAM Systems, RD Dep.
23

24. Взаимодействие

Разработка
Тестирование
2011 © EPAM Systems, RD Dep.
24

25. Детальный цикл

Анализ требований
Тест план
Тест дизайн
Обзор/осмотр дизайна тестов
Имплементация скелета
Подготовка тестовых
сценариев
Выполнение тестов
Создание отчетов
Занесение багов
Работа над патчами
Выпуск новой версии
2011 © EPAM Systems, RD Dep.
25

26. Проблемы автоматизации

В конце цикла разработки – много зависимостей
Изменения UI
Изменение бизнес-логики и тест-кейсов
BA
DEV
2011 © EPAM Systems, RD Dep.
QA
Auto
QA
26

27.

Что такое Framework?
Каркас, структура, сфера деятельности
В информационных системах структура программной
системы; программное обеспечение, облегчающее
разработку и объединение разных компонентов большого
программного проекта.
Википедия
2011 © EPAM Systems, RD Dep.
27

28. Зачем нужен Framework?

Ре-использование кода
Решение проблем одним изменением
Уменьшение количества изобретателей «велосипедов»
Система отчетов и логирования для всех новых тестов
2011 © EPAM Systems, RD Dep.
28

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

Key-word
driven
Data-driven
Управляемый данными
Управляемый ключевыми словами
Func.
decomp
Функциональная декомпозиция
Гибрид
Framework
2011 © EPAM Systems, RD Dep.
29

30. Keyword-driven подход

2011 © EPAM Systems, RD Dep.
30

31. Data-driven подход

Data-driven (Тесты, управляемые данными) – подход к тестированию, при
котором тестовые данные хранятся отдельно от скриптов, обычно в
документе Excel, файле CSV или в базе данных.
2011 © EPAM Systems, RD Dep.
31

32. Функциональная декомпозия

Разнесение кода в разные функции или модули в зависимости от их назначения.
2011 © EPAM Systems, RD Dep.
32

33. Типичная схема фреймворка

Test scripts
Business layer
Utilities
layer
UI layer
AUT / SUT
2011 © EPAM Systems, RD Dep.
33

34. Слой графических элементов

Цель: контролировать изменения UI
Примеры:
Хранилище локаторов
Object Repository в QTP
Name Mapping в TestComplete
UI-Element в Selenium IDE
2011 © EPAM Systems, RD Dep.
34

35. Слой бизнес функций

Цель: контролировать изменения бизнес-логики
Примеры:
Reusable Actions в QTP
Functions в TestComplete или любом другом
инструменте
2011 © EPAM Systems, RD Dep.
35

36. Слой утилит

Цель: вспомогательная
Примеры:
Логирование
Работа с базой данных
Чтение настроек и тестовых данных
2011 © EPAM Systems, RD Dep.
36

37. Многообразие средств автоматизации

2011 © EPAM Systems, RD Dep.
37

38. Как правильно выбрать средство ?

Разведать
Оценить
2011 © EPAM Systems, RD Dep.
Интегрировать
38

39. Преимущества коммерческих инструментов


Ком. средство
Бесплатное средство
1. Служба поддержки
2. Сложная система
для различных
видов тестирования
3. Среда разработки с своим
собственным инспектором
объектов и тд.
4. Важное качество - цена.
2011 © EPAM Systems, RD Dep.
39

40. Thanks for Your Attention

EPAM Systems — AT.01.1.AutomationProcess
By
Kiryl Zayets
EPAM Systems
41 University Drive, Suite 202 | Newtown, PA 18940
p: +1 267 759 9000 | f: +1 +1 267 759 8989 | e: [email protected] | w: www.epam.com
English     Русский Правила