ACC - конструируем тест-план
методом Google
Родион Горицков. Консорциум «Кодекс»
Немного о себе
•
Зовут меня Родион Горицков
•
В тестировании с 2011 года
•
Люблю сложные и большие проекты, за
которые никто не хочет браться
•
Много занимаюсь автоматизацией
тестирования с использованием
Webdriver и Python (сегодня не об этом!)
•
В последний год активно изучаю вопросы
планирования тестирования и
составления тест-планов
•
Пишу утилиты для тестировщиков и
охотно выкладываю их на GitHub
•
На досуге участвую в тестировании
MediaWiki в качестве волонтёра
План таков
1.
Узнаем, что такое ACC
2.
Возьмём приложение для примера
3.
Определим атрибуты
4.
Определим компоненты
5.
Определим возможности
6.
Напишем характеристики
возможностей
7.
Счастье и PROFIT!!1
Начнём с проблем
Имеются в наличии
•
Большой и древний проект
•
Слабая документация
•
Ограниченное время
•
Серьёзная ответственность
Что получим в итоге?
Награда за труды
•
Полное представление о функциональности
системы
•
Карта рисков по отдельным модулям системы
– ловим критичные ошибки
•
Отсортированный по модулям и атрибутам
список возможностей
•
Основа для составления тест-плана
•
Спокойствие и уверенность в проводимых
тестах
Человек-ГУГЛ
И волшебный метод ACC
Расшифровывается просто:
•
Attribute
•
Component
•
Capability
Для демонстрации
метода приглашается…
Калькулятор
Представьте, что не
имеете
о калькуляторе никакого
представления
И начнём использовать
ACC
Attribute (Атрибут)
•
Ключевая характеристика системы
•
Прилагательное (дело вкуса!)
•
Небольшое количество
Как выделить Атрибуты?
•
Спросить у отдела маркетинга
•
Спросить у ПМа
•
Поспрашивать у программистов
•
Реклама продукта
•
Интуиция
Пример атрибутов
калькулятора
•
Простой
•
Удобный
•
Настраиваемый
•
Надёжный
Component (Компонент)
•
Модуль или часть системы
•
Не очень крупный
•
Не слишком мелкий
•
Число больше, чем у Атрибутов
Как разбить систему на
Компоненты?
•
Поговорить с разработчиками
•
Интуиция – всему голова
•
Можно дополнить позже
Компоненты калькулятора
•
Арифметические операции
•
Память
•
Строка ввода-вывода
•
Преобразование единиц
•
Журнал операций
•
Встроенные листы (я тоже о них не
знал)
Атрибуты готовы
Компоненты готовы
Тест-план уже готов?
Нет, готова только таблица!
И тут появляются Capabilities
Это как фичи, только:
•
Относятся к Компонентам системы
•
Обеспечивают Атрибуты системы
Характеристики Возможностей
•
Частота отказов – 5 ступеней
•
Критичность отказов – 5 ступеней
Выглядит всё это так
Критерии установки
характеристик
•
Уже найденные ошибки
•
Сложность реализации
•
Важность для пользователя
•
Новизна
Вводим Возможности в систему
И получаем результат
Можно привязать тесты и баги
•
Получили наглядную карту рисков
•
Узнали обо всех возможностях программы
•
Получили список возможностей по атрибутам
и компонентам
•
Наладили учёт багов и тест-кейсов для
возможностей системы
•
Найденные ошибки учитываются при расчёте
рисков
Результат налицо
Неочевидные итоги
•
Картина продукта «на расстоянии»
•
Представление о наименее надёжных модулях
•
Возможность приоритизации по рискам и атрибутам
•
Надёжная и удобная основа для написания тестовых
сценариев и тест-планов
•
Просто поддерживать в актуальном состоянии
Пару слов о приложении для ACC
•
Веб-приложение с открытым исходным кодом –
TestAnalytics
http
://code.google.com/p/test-analytics
/
•
Попробуйте прямо сейчас (дослушав доклад,
естественно!)
https://test-analytics.appspot.com/
•
Гугл надорвался поддерживать, поэтому есть форк,
поддерживается с любовью (инструкция по установке
- внутри)
https
://github.com/rodion-goritskov/test-analytics-ng
Планы по развитию приложения
•
Удобный импорт данных из баг-трекеров
•
Импорт данных из систем управления тест-
кейсами
Спасибо за внимание!
Заинтересовались ACC? Пишите письма!
E-mail
и
Jabber
:
rodion@goritskov.com
GitHub
https://github.com/rodion-goritskov
ACC - конструируем тест-план методом Google