Покрытие тестов при тестировании программного обеспечения

Содержание:

Anonim

Что такое тестовое покрытие?

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

Проще говоря, это метод, позволяющий убедиться, что ваши тесты проверяют ваш код или то, какую часть кода вы выполняли, выполняя тест.

В этом руководстве вы узнаете

  • Что такое тестовое покрытие?
  • Что делает Test Coverage?
  • Как можно выполнить тестовое покрытие?
  • Преимущества тестового покрытия
  • В чем заключаются основные различия между охватом кода и охватом тестов?
  • Формула для расчета покрытия тестами
  • Примеры тестового покрытия
    • Пример 1:
    • Пример 2:
  • Недостатки:

Что делает Test Coverage?

  • Поиск области требования, не реализованной с помощью набора тестовых примеров
  • Помогает создавать дополнительные тестовые примеры для увеличения покрытия
  • Определение количественной меры тестового покрытия, которая является косвенным методом проверки качества
  • Выявление бессмысленных тестовых случаев, не увеличивающих охват

Как можно выполнить тестовое покрытие?

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

Преимущества тестового покрытия

  • Это может гарантировать качество теста
  • Это может помочь определить, какие части кода были фактически изменены для выпуска или исправления.
  • Это может помочь определить пути в вашем приложении, которые не были протестированы.
  • Предотвратить утечку дефекта
  • Время, объем и стоимость можно держать под контролем
  • Предотвращение дефектов на ранней стадии жизненного цикла проекта
  • Он может определять все точки принятия решения и пути, используемые в приложении, что позволяет увеличить охват тестированием.
  • Пробелы в требованиях, тестовых примерах и дефекты на уровне модуля и кода можно легко найти.

В чем заключаются основные различия между охватом кода и охватом тестов?

Покрытие кода и покрытие тестами - это методы измерения, которые позволяют оценить качество кода вашего приложения.

Вот некоторые важные различия между кабинами этих методов покрытия:

Параметры Покрытие кода Покрытие тестов
Определение Термин покрытия кода, используемый, когда код приложения выполняется во время работы приложения. Покрытие тестирования означает общий план тестирования.
Цель Показатели покрытия кода могут помочь команде отслеживать автоматические тесты. Покрытие тестирования дает подробную информацию об уровне, на котором было протестировано написанное кодирование приложения.
Подтипы Покрытие кода разделено на подтипы, такие как покрытие операторов, покрытие условий, покрытие ветвей, покрытие Toogle, покрытие FSM. Нет подтипа метода тестового покрытия.

Формула для расчета покрытия тестами

Чтобы рассчитать тестовое покрытие, вам необходимо выполнить следующие шаги:

Шаг 1) Общее количество строк кода в тестируемой части программного обеспечения.

Шаг 2) Количество строк кода, которые в настоящее время выполняются во всех тестовых примерах.

Теперь вам нужно найти (X, разделенное на Y), умноженное на 100. Результатом этого вычисления будет ваш процент покрытия тестом.

Например:

Если количество строк кода в системном компоненте равно 500, а количество строк, выполняемых во всех существующих тестовых примерах, равно 50, то ваше тестовое покрытие составляет:

(50/500) * 100 = 10%

Примеры тестового покрытия

Пример 1:

Например, если «нож» - это Предмет, который вы хотите протестировать. Затем вам нужно сосредоточиться на том, чтобы проверить, точно ли он режет овощи или фрукты. Однако есть и другие аспекты, на которые следует обратить внимание, чтобы пользователь мог с комфортом справиться с этим.

Пример 2:

Например, если вы хотите проверить приложение «Блокнот». Тогда проверка его основных функций является обязательной. Однако вам нужно охватить другие аспекты, поскольку приложение блокнота ожидаемо реагирует при использовании других приложений, пользователь понимает использование приложения, не дает сбой, когда пользователь пытается сделать что-то необычное и т. Д.

Недостатки:

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