This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

sltest.plugins.coverage.ModelCoverageReport class

Package: sltest.plugins.coverage

Specify model coverage report details for tests run with MATLAB Unit Test

Description

mcr = sltest.plugins.coverage.ModelCoverageReport(path) creates mcr, a ModelCoverageReport that specifies the report folder path. Use a ModelCoverageReport to specify report properties when you run Simulink® Test™ test files run with the MATLAB® Unit Test framework.

Specify report properties before you run the test:

  1. Create a ModelCoverageReport.

  2. Create a ModelCoveragePlugin, and specify the ModelCoverageReport by using the Producing property.

  3. Add the ModelCoveragePlugin to the TestRunner.

  4. Run the test.

Construction

mcr = sltest.plugins.coverage.ModelCoverageReport(path) creates mcr, a ModelCoverageReport that specifies the report folder path.

You can also import the class, then use the name:

import sltest.plugins.coverage.ModelCoverageReport
mcr = ModelCoverageReport(path)

Input Arguments

expand all

The path of the folder in which the model coverage report is saved after the test is complete.

Example: 'results/reports/coverage/model'

Examples

collapse all

This example shows how to specify model coverage report properties when running a Simulink® Test™ test file with MATLAB® Unit Test.

To run the example, set the current folder to a writable folder.

1. Import classes for the example.

import matlab.unittest.TestSuite
import matlab.unittest.TestRunner
import sltest.plugins.ModelCoveragePlugin
import sltest.plugins.coverage.ModelCoverageReport

2. Create a test suite and test runner.

Create a MATLAB Unit Test suite from AutopilotTestFile. Also create a test runner.

ste = testsuite('AutopilotTestFile.mldatx');
trn = TestRunner.withNoPlugins;

3. Specify the report location.

Create a subfolder in the current folder, and create a ModelCoverageReport object specifying the new folder.

mkdir('./exReports/coverage');
path = './exReports/coverage';
mcr = ModelCoverageReport(path)
mcr = 
  ModelCoverageReport with no properties.

4. Create a Model Coverage Plugin.

Use the Prodcing property to specify the ModelCoverageReport when creating the plugin.

mc = ModelCoveragePlugin('Producing',mcr)
mc = 
  ModelCoveragePlugin with properties:

    RecordModelReferenceCoverage: '<default>'
                 MetricsSettings: '<default>'

5. Add the coverage plugin to the test runner, and run the test.

addPlugin(trn,mc);

% Turn off the command line warnings.
warning off Stateflow:cdr:VerifyDangerousComparison
warning off Stateflow:Runtime:TestVerificationFailed

run(trn,ste)
Coverage Report for RollAutopilotMdlRef/Roll Reference
    ./exReports/coverage/tpe1dbd2cd_e219_44b3_b28f_3f0e499038a4.html
ans = 
  TestResult with properties:

          Name: 'AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test'
        Passed: 0
        Failed: 1
    Incomplete: 0
      Duration: 16.9571
       Details: [1x1 struct]

Totals:
   0 Passed, 1 Failed (rerun), 0 Incomplete.
   16.9571 seconds testing time.

Cleanup. Remove temporary folder and clear variables. Enable warnings.

warning on Stateflow:cdr:VerifyDangerousComparison
warning on Stateflow:Runtime:TestVerificationFailed

rmdir('./exReports','s');
clear('ste','trn','fldr','path','mcr','mc');

Introduced in R2018b