Upload
andrey-rebrov
View
187
Download
2
Embed Size (px)
Citation preview
Спецификация на примерах или как научить людей общаться
Ребров Андрей
История об одной команде
Тестировщик
Аналитик
Разработчик
Их ждала работа
Много работы
А тут еще и заказчик негодует
И что с ними
стало?
На практике• 15000 требований•Постоянные переделки• Рассогласование требований, тестирования и разработки
Делаем первые шаги в правильном направлении
Story Mapping
• Формируем бэклог релиза• Определяем объем задач• Определяем архитектурные
изменения
Начало
Препланирование
• 2 раза в неделю• Участвует вся команда• Длительность 1 час• Что не успели, то не
успели
Промежуточные итоги
• Стало меньше багов• Стало меньше переделок• Демо стало проходить
успешно
Но!
Три источника правды• Требования• Тест-кейсы• Код
SPEC BY EXAMPLE
Используем Impact mapping
Зачем•Проверяем на соответствие бизнес целям релиза•Ищем альтернативные пути решения• Четко формулируем пользовательские истории
Например
Импорт данных в CRM через шину
Продажа услуг через CRM
Продажник
Повышение эффективности отдела продаж
Импорт данных в CRM из XML
Парная работа тестировщика и аналитика
Что они делают
• Подготовка 1 - 2 примеров с точки зрения пользователя
• Представление данных в виде таблицы
• Описание всей терминологии
НапримерРегион Существ
ует категория
Данные услуги
Услуга Адрес
Юрлицо
Поволжье Да ID1АдресРога и копыта
ID1 Адрес
Рога и копыта
Поволжье Нет ID1АдресРога и копыта
ID2 Адрес
Рога и копыта
Меняем препланирования
Новый формат• Тестировщик и
аналитик объясняют примеры
• Проводим Diverse & Merge
Diverse & Merge• Разбиваем команду на
группы• Хотя бы 1 группа без
тестировщика и аналитика, которые прорабатывали требования
• Даем 15-20 минут на проработку своих примеров
• По окончании сводим все таблицы в одну
Что на выходеРегион Существ
ует категория
Найдена услуга
Данные услуги
Услуга
Адрес
Адрес доставки
Юрлицо
Поволжье Да Да ID1АдресРога и копыта
ID1 Адрес
Адрес
Рога и копыта
Поволжье Нет Да ID1АдресРога и копыта
ID2 Адрес
Адрес
Рога и копыта
Уменьшаем размеры
Что делаемУменьшаем количество строк/столбцов в таблице• Вводим параметрические
обозначения• Сливаем схожие сценарии
в один• Убираем лишние данные• Выделяем новые
пользовательские истории
Как былоРегион Существ
ует категория
Найдена услуга
Данные услуги
Услуга
Адрес
Адрес доставки
Юрлицо
Поволжье Да Да ID1АдресРога и копыта
ID1 Адрес
Рога и копыта
Поволжье Нет Да ID1АдресРога и копыта
ID2 Адрес
Рога и копыта
Как сталоСуществует категория
Найдена услуга
Данные услуги
Услуга Данные услуги
Да Да Услуга Обновляем
Копируем
Нет Да Услуга Создаем Копируем
Требования =
Тест-кейсы
Время автоматизации
Behavior Driven Development (BDD)
• Разбиваем пользовательскую историю на шаги• Каждый шаг имеет трансляцию в код• Входные данные – таблицы с предыдущего этапа
Пример
Подведем итоги
Что сделали• Impact mapping• Совместная работа QA
+ BA• Diverse & Merge• Оптимизация данных• BDD
Чего добились• Однозначная трассировка
требований в код• Однозначное понимание
требований всей командой• Упрощение оценки требований• Экономия времени
тестировщиков• Стало проще готовить и
проводить демо
Приглашаю на тренинги
Построение культуры DevOps Москва, 12 – 13 июня
Тестирование в AgileМосква, 8 – 10 июля