matlab.unittest.plugins.codecoverage.CoverageReport class

Пакет: matlab.unittest.plugins.codecoverage

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

Описание

Чтобы отобразить метрики покрытия кода в браузере MATLAB®, используйте экземпляр CoverageReport класс со сменным CodeCoveragePlugin.

Создание

Описание

reportFormat = CoverageReport создает CoverageReport формат. Используйте этот формат отчета с matlab.unittest.plugins.CodeCoveragePlugin произвести файл HTML во временной папке, которая содержит отчет покрытия кода.

пример

reportFormat = CoverageReport(reportFolder) создает CoverageReport формат. Используйте этот формат отчета с matlab.unittest.plugins.CodeCoveragePlugin произвести файл HTML в заданной папке, которая содержит отчет покрытия кода. Генерация отчета перезаписывает содержимое папки, заданной reportFolder.

пример

reportFormat = CoverageReport(___,'MainFile',mainFileName) создает CoverageReport формат с mainFileName как имя основного файла HTML, содержащего отчет покрытия кода.

Входные параметры

развернуть все

Папка, содержащая покрытие кода, сообщает о файлах в виде пути к папке относительно текущей папки или как абсолютный путь. Если папка не существует, CoverageReport создает его.

Имя основного файла HTML, содержащего покрытие кода, сообщает в виде имени файла с .html расширение.

Свойства

развернуть все

Имя основного файла HTML, который содержит отчет покрытия кода в виде имени файла с .html расширение. Чтобы установить свойство, передайте имя файла конструктору как 'MainFile', 'fileName' пара.

Пример: myReport.html

Атрибуты:

GetAccess
public
SetAccess
immutable

Типы данных: char | string

Примеры

свернуть все

Создайте протокол испытаний с помощью CoverageReport формат. Задайте папку и имя файла HTML для отчета.

Создайте тест для этой функции.

function res = add5(x)
   % Increment input by 5.
   if ~isa(x,'numeric')
      error('add5:InputMustBeNumeric','Input must be numeric.')
   end
   res = x + 5;
end

Выведите класс из matlab.unittest.TestCase реализовывать методы тестирования.

classdef Add5Test < matlab.unittest.TestCase
   methods (Test)
      function testDoubleOut(testCase)
         actOutput = add5(1);
         testCase.verifyClass(actOutput,'double')
      end
      function testNonNumericInput(testCase)
         testCase.verifyError(@()add5('0'),'add5:InputMustBeNumeric')
      end
   end
end

Этот тестовый скрипт создает тестовый набор для одного файла, добавляет CodeCoveragePlugin с CoverageReport формат к исполнителю тестов, и запускает тесты. Формат на плагине задает имя основного файла HTML результатов испытаний и папки, содержащей результаты.

import matlab.unittest.TestSuite
import matlab.unittest.TestRunner
import matlab.unittest.plugins.CodeCoveragePlugin
import matlab.unittest.plugins.codecoverage.CoverageReport

suite = TestSuite.fromFile('Add5Test.m');
runner = TestRunner.withNoPlugins;
runner.addPlugin(CodeCoveragePlugin.forFile('Add5Test.m', ...
   'Producing',CoverageReport('Add5Results', ...
   'MainFile','Add5TestResults.html')))
runner.run(suite)
Code coverage report has been saved to:
 C:\myWorkingFolder\Add5Results\Add5TestResults.html

Введенный в R2019a