Найти тему

Метрики покрытия требований. Часть 3.

Продолжаем разбирать метрики тестирования.

Требования – это описание того, какие функции и при каких условиях должно выполнять приложение для решения задач, полезных для пользователя.

Если на проекте есть требования, то обычно их много. Требования можно разделить на небольшие части, каждая из которых описывает определённую работу приложения. Для каждой такой части нужно создать тест-кейс, который проверит выполнение требования. Из-за большого объёма может быть сложно отследить, для какого количества требований уже созданы тест-кейсы. Поэтому используют метрику покрытия требований, чтобы определить качество и полноту покрытия требований тестами. Также эту метрику применяют при частом внесении изменений в требования, чтобы отслеживать, что все изменения учтены в тест-кейсах. Метрика рассчитывается по формуле:

T = (C / Count) ⋅ 100%, где:

T — тестовое покрытие;

C — количество требований, проверяемых тест-кейсами;

Count — общее количество требований.

Чем выше процент этой метрики, тем лучше проведено тестирование. Однако может случиться так, что при высоком показателе большая часть тест-кейсов проверяет одни и те же требования. Чтобы избежать такой ситуации и точно определить, какие требования покрыты тест-кейсами, а какие нет, используют матрицу трассировки, которую также называют матрицей соответствия требований.

Матрица трассировки (Traceability matrix) позволяет наглядно представить связи между различными элементами системы.

Матрица соответствия требований представляет собой двумерную таблицу, в которой указаны соответствия между функциональными требованиями продукта и подготовленными тестовыми сценариями (тест-кейсами).

Таким образом, можно отслеживать, какие требования покрыты тест-кейсами, какие нет. А также матрица трассировки позволяет отследить требования, для которых написано несколько тест-кейсов, и исключить дублированные или просто неэффективные тесты.

Применение матрицы трассировки помогает достичь следующих результатов:

  • наглядно представить текущее состояние разработки приложения;
  • разделить требования на более мелкие и упорядочить их;
  • выявить требования, для которых ещё не начата разработка;
  • определить, реализованы ли требования в настоящий момент;
  • установить, есть ли требования, для которых не подготовлены тестовые сценарии.

В зависимости от проекта внешнее представление матрицы трассировки может быть различным, но в общем виде она может выглядеть так:

-2

Чтобы составить матрицу трассировки, нужно выполнить несколько шагов. В этом контексте мы не рассматриваем разработку кода на основе требований, а сосредоточимся на создании тест-кейсов и чек-листов:

  1. Декомпозиция и приоритизация требований. В итоге получается структурированный перечень, включающий атомарные требования.
  2. Разработка чек-листов и тест-кейсов на основе списка декомпозированных требований.
  3. Сравнение списка требований со списком уже созданных тест-кейсов в табличном формате.
  4. Доработка тест-кейсов, если это необходимо.
  5. Актуализация матрицы трассировки. Нужно следить за изменениями в требованиях и добавлять их в таблицу.

При правильном составлении и использовании матрица трассировки может стать эффективным инструментом контроля качества покрытия требований. Она также помогает отслеживать задолженность по документации и выявлять, какие пробелы в тестовой документации необходимо заполнить. Кроме того, матрицу трассировки можно использовать для подготовки отчёта заказчику проекта, чтобы он мог следить за прогрессом работы команды тестирования и видеть, что все требования учтены и включены в процесс разработки.

Кроме того, существует множество других метрик, используемых в тестировании, например:

  • степень взаимосвязанности требований;
  • коэффициент стабильности требований;
  • коэффициент повторно открытых дефектов;
  • средняя стоимость исправления дефекта;
  • скорость работы (velocity) команды QA;
  • среднее время жизни дефекта;
  • коэффициент ошибок, пропущенных в продакшн (в релиз);
  • доля неподтверждённых (отклонённых) дефектов.

Эти метрики позволяют получить более полное представление о качестве продукта и эффективности процессов разработки и тестирования.

Также существуют метрики, которые применяются к автоматическим тестам:

  • скорость разработки скриптов;
  • покрытие тест-кейсов автотестами;
  • количество найденных автотестами дефектов в приложении;
  • время выполнения полного набора скриптов;
  • время выполнения smoke набора скриптов (набора для дымового тестирования).

Эти метрики помогают оценить качество автоматических тестов и эффективность их использования.

Если у вас есть вопросы или вы просто хотите стать частью команды тестировщиков, то переходи в ТГ канал, где можем пообщаться с единомышленниками и найти много интересных и полезных знаний!Также если вам нужна индивидуальная консультация, менторство и помощь в создании проекта пишите в ТГ канал!

Обучение тестированию