Зачем нужна прослеживаемость

Прослеживаемость требований отвечает на три вопроса:

  1. Каждое ли требование протестировано? (Forward)
  2. Каждый ли тест имеет цель? (Backward)
  3. Если требование изменится, какие тесты обновить? (Анализ влияния)

Матрица прослеживаемости

Базовая структура

Req IDТребованиеТест-кейсыПокрытиеСтатус
REQ-001Регистрация по emailTC-001, TC-002ПолноеПройдено
REQ-002Сложность пароляTC-010, TC-011Полное1 провал
REQ-003Двухфакторная авторизацияНетНе тестировано

Двунаправленная прослеживаемость

Forward (Требование → Тест): Каждое требование имеет хотя бы один тест. Backward (Тест → Требование): Каждый тест связан с требованием.

НаправлениеНаходитДействие
Forward-пробелыНепротестированные требованияНаписать тест-кейсы
Backward-пробелыТесты-сиротыУдалить или связать

Инструменты

Таблицы (ручной метод), Jira + Xray/Zephyr (нативно), Azure DevOps (встроенное), TestRail.

Упражнение: Постройте RTM

Для 8 требований приложения обмена файлами создайте RTM и выявите пробелы покрытия.

Решение

Критические пробелы: Истечение ссылок (R3), шифрование (R7) и аудит-лог (R8) имеют нулевое покрытие. Нужно немедленное создание тест-кейсов, особенно R7 (безопасность) и R8 (compliance).

Ключевые выводы

  • RTM связывает требования с тест-кейсами, выявляя пробелы покрытия
  • Двунаправленная прослеживаемость ловит и непротестированные требования, и тесты-сироты
  • Требования без тест-кейсов — слепые пятна, приоритизируйте по рискам
  • Поддерживайте RTM как живой документ
  • Используйте инструменты для автоматизации прослеживаемости