Main Content

Class-Based Unit Tests

编写基于类测试;帕拉meterize tests; apply fixtures; select and run tests

Write xUnit-style tests to check that the output of MATLAB®code is as you expect. Class-based unit tests give you access to the full unit testing framework functionality. For example, you can write parameterized tests, tag your tests, or use shared test fixtures.

To get started, seeAuthor Class-Based Unit Tests in MATLABandWrite Simple Test Case Using Classes.

Functions

runtests Run set of tests
testsuite Create suite of tests
testrunner Create test runner
run (TestSuite) RunTestSuitearray usingTestRunnerobject configured for text output
run (TestRunner) Run all tests inTestSuitearray
run (TestCase) RunTestCasetest
runInParallel Run all tests inTestSuitearray in parallel

Classes

matlab.unittest.TestCase 超类的所有matlab.unittesttest classes
matlab.unittest.TestSuite Class for grouping tests to run
matlab.unittest.Test Specification of single test method
matlab.unittest.TestRunner Class for running tests inmatlab.unittestframework
matlab.unittest.TestResult Result of running test suite

Packages

matlab.unittest Summary of packages and classes inMATLABUnit Test Framework
matlab.unittest.qualifications Summary of classes inMATLABQualifications Interface
matlab.unittest.constraints Summary of classes inMATLABConstraints Interface
matlab.unittest.diagnostics Summary of classes inMATLABDiagnostics Interface
matlab.unittest.fixtures Summary of classes inMATLABFixtures Interface
matlab.unittest.parameters Summary of classes associated withMATLABUnit Test parameters
matlab.unittest.plugins Summary of classes inMATLABPlugins Interface
matlab.unittest.selectors Summary of classes inMATLABSelectors Interface
Simulink.sdi.constraints.MatchesSignal Constraint that compares time series data with tolerances using the Simulation Data Inspector

Topics

Write Tests

Author Class-Based Unit Tests in MATLAB

To test a MATLAB program, write a unit test using qualifications that are methods for testing values and responding to failures.

Table of Verifications, Assertions, and Other Qualifications

Test values and respond to failures using verifications, assumptions, assertions, and fatal assertions.

Write Simple Test Case Using Classes

Write class-based unit tests to determine the correctness of your program.

Write Setup and Teardown Code Using Classes

Setup and teardown code, or test fixtures, sets up the pretest state of the system and returns it to the original state after running the test. You can define setup and teardown methods that run before and after each test method or all test methods in a test class.

Tag Unit Tests

Use test tags to group tests into categories and then run tests with specified tags. Typical test tags identify a particular feature or describe the type of test.

Write Tests Using Shared Fixtures

You can share test fixtures across test classes. This example shows how to use shared fixtures when creating tests.

Write Parameterized Test

Use Parameters in Class-Based Tests

Use parameters to provide data that should be used iteratively by your tests.

Create Basic Parameterized Test

Test a function by creating a test that is parameterized in theTestmethodsblock.

Create Advanced Parameterized Test

Create a test that is parameterized in theTestClassSetup,TestMethodSetup, andTestmethodsblocks.

Define Parameters at Suite Creation Time

Use aTestParameterDefinitionmethod to define parameters at test suite creation time.

Use External Parameters in Parameterized Test

Use data-driven testing to inject variable inputs into your parameterized test.

Run Tests and Analyze Results

Create Simple Test Suites

This example shows how to combine tests into test suites, whether they are organized in packages and classes or files and folders, or both.

Run Tests in Editor

Run your tests while working in the Editor or Live Editor.

Run Tests for Various Workflows

Explore different ways to run tests.

Programmatically Access Test Diagnostics

Programmatically access the diagnostics that the testing framework records on test results.

Add Plugin to Test Runner

This example shows how to add a plugin to the test runner.

Analyze Test Case Results

This example shows how to analyze the information returned by a test runner.

Analyze Failed Test Results

This example shows how to identify and handle failed tests.

Rerun Failed Tests

Rerun failed tests quickly and conveniently.

Dynamically Filtered Tests

Assumption failures produce filtered tests that are marked asIncompleteinstead of producing test failures. To avoid test code that is not executed, monitor the filtered tests.

Compile MATLAB Unit Tests

Create a standalone application to run your tests on target machines that do not have MATLAB installed.