В докладе рассказывается об опыте автоматизации тестирования приложений, написанных с использованием технологии WPF в нашем проекте:
— об истории развития автоматизации тестирования GUI в нашем проекте
— о нашем подходе к автоматизации тестирования и о системе, построенной на основе открытой .NET библиотеки White
— о полезных процессных
практиках, к которым мы пришли, и о положительной роли автоматизации в нашем процессе гибкой разработки.
2. Содержание
Особенности проекта
Наш подход
Сравнение средств для автоматизации
тестирования UI
Создание Automation framework
Процессные практики
Итоги
4. Тестирование в проекте
Автоматизированное
тестирование UI
(тестировщики +
разработчики)
Ручное Модульные
тестирование тесты на код
(тестировщики) (разработчики)
5. Проблемы
Нет времени
“Что-то не работает…”
Тестируемое приложение слишком часто
меняется
Поддержка старых тестов
6. Выбор есть всегда…
Quick Test Coded UI Tests White
Professional
Поддерживаемые Win32, WPF, Win32, WPF, Win32, WPF,
технологии WinForm, SWT, WinForm, SWT, WinForm, SWT,
Silverlight, Web Silverlight, etc. Silverlight 2.0
etc.
Скорость работы Средняя/ Удовлетворительна Удовлетворительна
скриптов Медленная я я
Среда QTP env. Visual Studio Visual Studio
разработки 2010
Запуск тестов Из QTP, Как юнит-тесты Как юнит-тесты
Из HP QC (nunit, reSharper, и (nunit, reSharper, и
др.) др.)
Из TFS
Язык Vbscript C# C#
программировани
я
Лицензия Платная Платная Бесплатная,
открытый код
Record&Play + + -
7. Automation framework: цели
Просто и удобно писать тестовые сценарии
Масштабируемость
Регулярный запуск тестов и интеграция с CI
Читаемость кода тестов
Запуск тестов на произвольном ПК
8. A utoma tion frame work: структура
F a c ilit
Te s ts
ie s
V ie w
E n t it i S e rvi
ac c ess
es c es
ors Авто -
генераци
я
9. Распределение
обязанностей
Разработчики – доработка Automation Framework
и написание Services
Тестировщики – написание Services и построение
тестовых сценариев
10. Планирование
Вместе с текущей итерацией
Включение автоматизации в критерий
готовности
Регулярное отслеживание статуса
Участие разработчиков и тестировщиков
11. Мотивация
Для разработчиков
Быстрое получение результатов
тестирования
В новом Automation Framework приятно и
удобно работать
Для тестировщиков
Сокращение ручного тестирования
Повышение квалификации
Для всех
Лучшее понимание процесса
тестирования и разработки
12. How To?
Процесс Технологии
Сотрудничество Выбрать
тестировщиков и подходящую
разработчиков технологию
Планирование Построить удобный
автоматизации Automation
framework
13. И в результате…
1,5 спринта на разработку Automation Framework
4 спринта на автоматизацию ~ 40% регрессионных тестов
Комфортная разработка
Регулярное получение результатов
Планирование и мониторинг
Проблемы со временем
Периодические проблемы со
стабильностью
14. И в результате…
Повышение качества тестирования –
повышение качества продукта
Личное развитие членов команды
Улучшение атмосферы в команде