Всем привет! Меня зовут Алексей Архипов. Я работаю начальником отдела тестирования в Национальном клиринговом центре (НКЦ), входящем в состав Группы «Московская биржа». За последние годы мы столкнулись с множеством вызовов в оценке качества программного обеспечения (ПО), особенно в условиях высокой нагрузки и сложности критических систем. В начале работы с QA-командой меня заинтересовал ключевой вопрос — каким образом можно точно измерить качество тестирования? Ответ оказался неочевидным.
В современных условиях тестирование ПО — это не просто процесс проверки функциональности, а ключевой элемент управления качеством. Однако популярная метрика Defect Leakage (DL), которую часто используют для оценки работы QA-инженеров, не всегда отражает реальную картину. В НКЦ мы столкнулись с этой проблемой и разработали для себя более точный подход — Коэффициент эффективности тестирования (КЭТ). В этой статье я расскажу, почему DL не работает, как мы внедрили КЭТ и какие результаты получили.
Проблема с метрикой Defect Leakage: когда цифры вводят в заблуждение
Defect Leakage — это отношение количества дефектов, найденных на промышленном контуре, к общему числу дефектов, обнаруженных в ходе тестирования. Формула выглядит так:
На первый взгляд, это логично: чем меньше дефектов утекает на промышленный контур, тем лучше QA. Однако на практике DL обладает рядом критических недостатков:
1. Нет учета критичности дефектов
Проблема: Все дефекты считаются равными, независимо от их влияния на бизнес.
Пример: Незначительный баг (например, смещение элемента интерфейса) и критический сбой (например, ошибка в финансовой транзакции) получают одинаковый вес.
Последствия: Утечка одного критического дефекта может привести к миллионам потерь, а несколько мелких — остаться незамеченной. DL не отражает риски, связанные с дефектами.
2. Смещение выборки из-за специфики продукта
Проблема: Некоторые дефекты невозможно обнаружить без запуска на промышленном контуре.
Пример: Ошибки интеграции с внешними системами или зависимость от конкретных железок.
Последствия: Метрика показывает низкую эффективность, хотя дефекты не могли быть выявлены на ранних этапах.
3. Невозможность сравнения между продуктами
Проблема: DL не учитывает сложность продуктов.
Пример:
Продукт A: 100% DL, но это простой веб-интерфейс.
Продукт B: 50% DL, но это система клиринга с десятками интеграций.
Последствия: Высокий DL для сложного продукта — это может быть допустимо, а для простого — катастрофа. Сравнивать такие метрики бесполезно.
4. Негативное влияние на мотивацию команды
Проблема: QA-инженеры могут избегать поиска сложных дефектов, чтобы не "портить" статистику.
Пример: Фокус на сборе мелких багов (например, ошибки оформления), в то время как системные сценарии остаются непроверенными.
Последствия: Метрика превращается в инструмент давления, а не в стимул к улучшению качества.
Есть и другие причины по которым DL не всегда отображает реальную эффективность тестирования: зависимость от объема тестирования, зависимость от объема изменений в релизе и т.д.
В НКЦ мы столкнулись с подобной ситуацией: метрика DL показывала высокую эффективность, но на промышленном контуре всё равно происходили критические сбои. Это заставило нас пересмотреть подход.
Коэффициент эффективности тестирования (КЭТ): новый взгляд на качество
Чтобы учесть критичность дефектов и избежать искажений, мы внедрили КЭТ. Основная идея — присвоить к каждому дефекту коэффициент (вес), отражающий его значимость для бизнеса.
Формула КЭТ:
где:
● W testn- вес дефекта по критичности:
вес дефекта определяется по шкале критичности (например: 1–3):
3 — критические дефекты (блокирующие функциональность, угрожающие безопасности);
2 — значимые (некорректная логика, частичные сбои);
1 — незначительные (ошибки дизайна, мелкие неудобства).
● QApn– количество дефектов, найденных на QA тестировании, по приоритетам;
● UATpn- количество дефектов, найденных на UAT тестировании (если есть), по приоритетам;
● Ppn- количество дефектов, найденных на промышленном контуре, по приоритетам.
Сравнение Defect Leakage и коэффициента эффективности тестирования: когда что использовать?
| Параметр | Defect Leakage (DL) | Коэффициент эффективности тестирования (КЭТ) | 
| Учет критичности | ❌ Не учитывает | ✅ Учитывает вес дефектов | 
| Сравнение продуктов | ❌Неадекватна для сложных/простых продуктов | ✅ Учитывает сложность (вес дефектов адаптируется к продукту) | 
| Мотивация команды | ❌ Смещает фокус на количество | ✅ Стимулирует поиск критических дефектов | 
| Объективность | ❌ Искажает результаты из-за специфики продукта | ✅ Учитывает реальные риски и бизнес-приоритеты | 
| Сложность расчета | ✅ Простая (только количество) | ⚠️ Требует настройки весов и интеграции с инструментами | 
Преимущества коэффициента эффективности тестирования перед метрикой Defect Leakage
1. Объективность: учитывает влияние дефектов на бизнес.
2. Гибкость: метрика адаптируется к сложности продуктов.
3. Мотивация: QA-инженеры сосредотачиваются на важных сценариях, а не на количестве.
4. Сравнение: позволяет корректно оценивать эффективность разных продуктов.
Когда использовать Defect Leakage, а когда — коэффициент эффективности тестирования?
| Ситуация | Рекомендуемая метрика | Почему | 
| Простой продукт (например, MVP) | DL | Минимизирует усилия на настройку весов; подходит для начальных этапов. | 
| Сложные системы (банки, финтех, телеком) | КЭТ | Учитывает бизнес-риск; позволяет сравнивать эффективность тестирования. | 
| Нужно оценить "чистоту" тестирования | DL | Показывает общее количество найденных и упущенных дефектов. | 
| Нужно минимизировать ущерб бизнесу | КЭТ | Фокус на критичных дефектах; снижает вероятность системных сбоев. | 
Как внедрить коэффициент эффективности тестирования в вашей компании?
- Собрать исторические данные: проанализируйте дефекты за последние 3–6 месяцев. 
- Согласовать шкалу весов: работайте совместно с командой разработчиков, аналитиков, PM, техподдержкой и т.д. 
- 
Интеграция с инструментами: ● Добавьте при необходимости кастомное поля в Jira. ● Настройте автоматизированный сбор статистики. 
- Провести обучение QA-инженеров. 
- Визуализировать данные: создайте дашборды в Jira/Power BI/Grafana и т.д. 
- Регулярно пересматривать веса: адаптируйте шкалу под изменения в продукте и бизнес-приоритетах. 
- Регулярно анализировать итоги. 
Примеры применения и результаты
1. Пример завышения результатов по DL
DL: 10% (5 из 50 дефектов «утекло» на промышленный контур).
КЭТ: 75% (сумма веса найденных дефектов: 45, упущенных: 15).
Анализ: хотя утечка в процентах казалась низкой, КЭТ показал, что упущенные дефекты были критичными. Это позволило скорректировать фокус тестирования на более важные сценарии.
2. Пример занижения результатов по DL
DL: 40% (20 из 50 дефектов «утекло» на промышленный контур).
КЭТ: 82% (сумма веса найденных дефектов: 90, упущенных: 20).
Анализ: хотя утечка в процентах казалась высокой, КЭТ показал, что упущенные дефекты были некритичными, а все критичные были найдены в рамках тестирования. Это важно для систем, где мелкие дефекты не критичны для бизнеса и качества работы ПО.
Итоги
Коэффициент эффективности тестирования стал для нас более объективной метрикой, чем Defect Leakage. Он помогает увидеть, насколько тестирование защищает бизнес-критичные процессы, а не просто формирует статистику.
В НКЦ мы убедились, что переход от DL к КЭТ позволяет не только точнее оценивать эффективность тестирования, но и повышать качество ПО. Эта метрика особенно актуальна в системах, где стоимость упущенного дефекта может быть катастрофической. Надеемся, что наш опыт поможет вашей команде найти баланс между количественными показателями и реальным качеством продукта.
 
          