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('add5.m', ...
   'Producing',CoverageReport('Add5Results', ...
   'MainFile','Add5TestResults.html')))
runner.run(suite)
Code coverage report has been saved to:
 C:\myWorkingFolder\Add5Results\Add5TestResults.html
Введенный в R2019a