Первоклассное тестирование
Евгений Ланцов. Return On Intelligence.
Содержание
•
Тестирование это больше, чем поиск дефектов
•
Какую информацию может предоставить тестирование?
•
Помогаете ли вы своим тестировщикам?
•
Насколько ценно ваше тестирование?
•
Как сделать вашу команду тестирования первоклассной?
Кому это может быть
интересно?
•
Менеджерам, сомневающимся в пользе, которую приносит их команда
тестирования
•
Менеджерам, желающим увеличить ценность тестирования
•
Менеджерам, которым предстоит продавать тестирование заказчику
•
Тест менеджерам, набирающим команду тестирования
•
Тестировщикам, желающим понять, к чему стоит стремиться, чтобы
найти хорошую работу
Восприятие – это все
Что менеджеры зачастую думают о тестировании:
–
Узкое место
–
Хранители качества
–
Любители все сломать
–
Кликающие по кнопкам
–
Специальные знания не обязательны
–
Дорогостоящее излишество
–
Отвечает за качество продукта и гарантирует качество
Истинная цель
тестирования
•
Истинная цель тестирования – это предоставление информации о
состоянии продукта.
•
“The ultimate reason testers exist is to provide information that others on the
project use to create things of value.” James Bach
•
Чтобы оценить тестирование нужно оценить информацию, которую оно
предоставляет
•
“Testing is a service role. Feel good about that. The service you provide is
vital.” Cem Kaner
Кто способен оценить информацию?
Тестирование – центр
колеса
QA
Директорат
Пользователи
Тех.
поддержка
SQA
Менеджмент
проекта
Разработчики
Маркетинг
Технические писатели
Информация для
разработчика
•
Цель: Написать код вовремя без грубых ошибок. Чтобы заказчик не
нашел серьезных дефектов. Иначе, буду выглядеть глупо в глазах
команды, особенно менеджера.
•
Вопросы:
–
Сколько дефектов я допустил?
–
Они разбросаны по коду или все в одном месте?
–
Я делаю разные ошибки или одни и те же?
•
Метрики:
–
Количество дефектов на количество строк кода
–
Распределение дефектов по функционалу (модулям)
–
Причины дефектов (root cause)
Информация для тест
менеджера
•
Цель: Убедиться, что тестировщики нашли бОльшую часть дефектов, и
очень немногие просочатся в релиз.
•
Вопросы:
–
Каков процент дефектов найденных до, во время и после
системного тестирования?
–
Как мы пропустили дефекты?
•
Метрики:
–
Распределение дефектов по фазам тестирования
–
Анализ пропущенных дефектов, их причины
Информация для
менеджера проекта
•
Цель: Создать высококачественный продукт, удобный для заказчика,
решающий его проблемы и не создающий дополнительных затрат
после релиза.
•
Вопросы:
–
Готов ли продукт к релизу – соответствует ли критериям качества?
–
Каково было бы их влияние (impact) на систему, пропусти мы их?
–
Сколько еще серьезных дефектов может быть не найдено?
–
Каково их влияние?
•
Метрики:
–
Количество дефектов на количество строк кода
–
Оценка оставшегося тестирования
–
Анализ влияния дефектов (impact analysis)
А также
•
Директорат – информации о качестве продуктов компании,
информация о рисках, статус проектов по тестированию
•
Технические писатели – отзывы о документации, дефекты
документации
•
SQA – информация
о процессе тестирования, проектных процессах,
помогающая их улучшать
•
Техническая поддержка - информация о результатах анализа и/или
тестирования работоспособности, стабильности, надежности,
восстановимости продукта и т.д. (reliability, stability, recoverability)
•
Пользователи – информация об известных проблемах (known issues),
помощь по работе с продуктом
•
Маркетинг – информация о тестировании для продвижения компании
на рынке
Кто способен предоставить эту информацию?
Первоклассные
тестировщики
Первоклассные тестировщики способны:
–
Оценить дизайн и архитектуру приложения еще до того, как код
написан
–
Во время написания кода подготовить ручные и
автоматизированные тесты, проверяющие случаи, о которых
разработчики даже не думали
–
Измерить все, что они протестировали, оценить риски и понять, что
протестировано достаточно, чтобы их минимизировать
–
Не просто находить и создавать отчеты о дефектах, но
предоставлять информацию о продукте и ходе тестирования,
принимать участие в анализе требований, дизайне.
Оцените ваше тестирование
•
Участвуют ли ваши тестировщики в обсуждениях требований или
дизайн митингах?
•
Делитесь ли вы всей информацией о продукте с тестировщиками?
•
Помогаете ли вы тестировщикам с требуемыми тест инструментами?
•
Улучшаете ли вы тестируемость продукта?
•
Тратите ли вы на тренинги для тестировщиков столько же, сколько для
разработчиков?
•
Начинают ли ваши тестировщики работать только, когда код уже
написан?
•
Обладают ли ваши тестировщики специфической технической
экспертизой? Легко ли найти им замену?
Оцените ваше тестирование
•
Нашли ли ваши тестировщики наиболее критичные ошибки до релиза?
•
Нравится ли разработчикам работать с тестировщиками?
•
Владеют ли они специфической информацией о продукте и рисках?
•
Удовлетворены ли они тем, что минимизируют риски продукта до
релиза?
•
Способны ли они оценить время, необходимое для тестирования, и
объяснить почему?
•
Бывает ли так, что сроки релиза срываются из-за тестирования?
•
Могут ли ваши тестировщики читать код наравне с разработчиками?
•
Можете ли вы оценить объем необходимых изменений в продукте,
основываясь на результатах тестирования?
Как собрать команду первоклассных
тестирощиков?
Найм и обучение
4 основных критерия экспертизы:
–
Фундаментальные знания: техники, типы, этапы тестирования
–
Опыт: практическое применение фундаментальных знаний, опыт
работы с различными приложениями, способности к освоению
новых
–
Инструменты/технологии: знание технологий и инструментов,
используемых на проекте, обучаемость новым
–
Знания предметной области: понимание ожиданий заказчика в
конкретных доменах, знание потенциальных проблем, применение
этих знаний, специфические техники и типы тестирования
Найм и обучение
•
Найм:
–
Создайте у себя в голове образ идеального тестировщика для
вашего проекта
–
Для собеседования подготовьте вопросы и задачи на основе своего
проекта
–
Обращайте внимание на обучаемость и логическое мышление в
первую очередь
–
Оцените подход к решению нестандартных задач
•
Обучение:
–
Не экономьте на обучении
–
Проводите тренинги
–
Сертифицируйте сотрудников
–
Мотивируйте самообразование
Выводы
•
Не всем проектам и командам жизненно необходимо первоклассное
тестирование.
•
Подумайте, удовлетворены ли вы вашим тестированием.
•
Ваша команда может быть способна на многое. Помогите им раскрыть
потенциал.
•
Не набирайте команду тестирования бездумно.
•
Растите профессионалов.
Вопросы?
Использованные статьи
•
“The Secret Skill – How to Sell Testing”, Jim Hazen, ST&QA magazine,
August 2011
•
“No More Second Class Testers!”, Johanna Rothman, pp. 24-32, Better
Software magazine, January 2004
•
“Proving Our Worth”, Lee Copeland, pp. 32-36, Better Software magazine,
July/August 2006
Первоклассное тестирование
01
/
21
Первоклассное тестирование Евгений Ланцов. Return On Intelligence.