Ответ
Трассируемость (Traceability) — это возможность отследить связь между требованиями и тестовыми артефактами. Она обеспечивает прозрачность и контроль покрытия.
Основной инструмент — Матрица трассируемости (Traceability Matrix): Это таблица, где строки представляют требования, а столбцы — тест-кейсы. Отметка на пересечении показывает, что конкретное требование проверяется данным тест-кейсом.
| Пример матрицы: | ID требования | Описание требования | TC-001 (Логин с валидными данными) | TC-002 (Проверка маски пароля) | TC-003 (Восстановление пароля) |
|---|---|---|---|---|---|
| REQ-001 | Возможность входа в систему | ✅ | ❌ | ❌ | |
| REQ-002 | Пароль должен скрываться символами | ❌ | ✅ | ❌ | |
| REQ-003 | Возможность восстановления пароля | ❌ | ❌ | ✅ |
Преимущества:
- Контроль покрытия: Наглядное отображение того, какие требования покрыты тестами, а какие — нет.
- Анализ воздействия изменений: При изменении требования легко определить, какие тесты нужно обновить или добавить.
- Упрощение аудита и отчетности: Прямая связь упрощает доказательство полноты тестирования.
Способы реализации:
- Инструменты управления тестированием: Jira (с плагинами типа Xray, Zephyr), TestRail, Qase.io. Они позволяют устанавливать связи напрямую между issue/requirement и тест-кейсом.
- Таблицы (Excel/Google Sheets): Простой и гибкий вариант для небольших проектов.
-
Автоматизация (в коде тестов): Использование тегов или аннотаций для связи теста с ID требования.
# Пример на pytest import pytest @pytest.mark.requirement("REQ-001") @pytest.mark.requirement("REQ-005") def test_successful_login(): # ... код теста assert is_logged_in() == TrueЗатем специальные плагины или скрипты могут сгенерировать отчет о покрытии на основе этих меток.