Процесс тестирования в
распределенной команде



  Светлана Федянина, Softline
О себе
• в прошлом web-developer, scrum master
• в настоящем – PM / Product Owner
План доклада
1. Зачем распределенная команда?
План доклада
1. Зачем распределенная команда?

2. Проблемы распределенной
   команды и ключевая роль
   тестирования в их решении
План доклада
1. Зачем распределенная команда?

2. Проблемы распределенной
   команды и ключевая роль
   тестирования в их решении

3. Организация тестирования в
   Softline
Наша распределенная
команда
Сложная система
Проблемы в
распределенной команде
1. Коммуникации
Проблемы в
распределенной команде
2. Критерий готовности
Регулярная проблема
Планирование
   релизов




               итерация 1   …     итерацияN итерация1      …      итерацияM


                        РЕЛИЗ 1                         РЕЛИЗ 2
Проблемы в
распределенной команде
3. Качество разработанного продукта
Тест – анализ
   • Проработка тестовых случаев
      – Модель тестирования
      – Эффективность тестирования

Название                 Описание                                 Приоритет (от 1 до 4)    Автоматизация




Импорт программы из      В админке А1 добавить программу.
старой в новую платформу Проверить импорт программы в А2.                                 4 да




Импорт пиктограммы из    Добавить пиктограмму к программе в А1.
старой в новую платформу Проверить импорт пиктограммы в А2.                               3 нет
Необходимость
тест - планов
1. Большой проект
Необходимость
тест - планов
1. Большой проект
2. В команде несколько
   QA - инженеров
Тест - дизайн
Тест - дизайн
• Decision Table Testing

• Boundary Value Testing

• Equivalence Class Testing
Тест - дизайн
• Decision Table Testing
Boundary Value Testing
Boundary Value Testing
10-19, 20-49




1. {9,10,11}, {18,19,20}
2. {19,20,21}, {48,49,50}
Тест - дизайн
• Equivalence Class Testing




10 - 19
20 - 49
-1 - 9
50 - 100
Что(,) автоматизируем?
• Стратегия «Зачем? Что? Как?»
Автоматизируем?
• Стратегия «Зачем? Что? Как?»
  - Вам это не понадобится (YAGNI)
Что(,) автоматизируем?
• Стратегия «Зачем? Что? Как?»
  - Вам это не понадобится (YAGNI)
  - Делай проще и короче (KISS)
Что(,) автоматизируем?
• Стратегия «Зачем? Что? Как?»
  - Вам это не понадобится (YAGNI)
  - Делай проще и короче (KISS)
  - Не повторяй себя (DRY)
Проект фреймворка
Баг – репорт
 Категоризация дефектов
Severity         Priority   Bug’s face


Блокирующая      Высокий
Критическая



Значительная     Средний




Незначительная   Низкий
Тривиальная
Дефекты
Релизу – нет!
Дефекты
Релизу – ДА!
Баг – репорт
Где? Что? Когда?
1. понимание проблемы

2. понимание, какую строку кода
   править
Эстафета или каждый за
себя?
Применение инженерных
практик
• CI


• TDD


• Code Review


• XP
Code Freeze
Перенос кода и данных
между средами
Применение инженерных практик




 За предоставление статистики спасибо коллегам: А. Клименкову (axoft.ru), Б. Вольфсону.
Что есть критерий
готовности?
Что изменилось в QA?
Раньше                      Сейчас


Кликер                      Автоматизирует,
                            Тест – дизайн,
                            Пишет и ревьюит код



«Что дали, то и тестирую»   Планирование работы в
Хаотичный процесс           итерации


Нет документации            Есть чеклисты, план тесты по
тестировщика                необходимости
Что изменилось в QA?
Раньше                      Сейчас

Находим баги методом        Выявляем тестовые случаи,
случайного поиска           тестируем по чеклисту,
                            случайный поиск,
                            автоматизация


Тестировщик «сам по себе»   Тестировщик активно
                            взаимодействует с
                            аналитиками, разработчиками

Список багов                Приоритезированный список
                            багов

Нет четкого понятия «Все    Отвечает за Критерий
готово»                     готовности
Итоги
Распределенная команда:
• взаимодействия тестировщиков
• практики тестирования
• определение «Все готово»


 РЕЗУЛЬТАТ - КАЧЕСТВО!
Спасибо за внимание!


Вопросы 


Светлана Федянина
SvetlanaF@softline.ru
http://twitter.com/Fedyanina
http://fedyanina.blogspot.com/

Процесс тестирования в распределенной команде