基于类的单元测试
编写基于类的测试;将测试参数化;应用脚手架;选择并运行测试
编写 xUnit 风格的测试以检查 MATLAB® 代码是否按预期输出。基于类的单元测试可为您提供访问整个单元测试框架功能的权限。例如,您可以编写参数化测试、对测试进行标记或使用共享的测试脚手架。
要快速入门,请参阅在 MATLAB 中编写基于类的单元测试和使用类来编写简单测试用例。
App
测试浏览器 | Run MATLAB tests and view results (自 R2023a 起) |
函数
runtests | 运行一组测试 |
testsuite | 创建测试套件 |
testrunner | 创建测试运行程序。 (自 R2021a 起) |
run (TestSuite) | 使用配置为文本输出的 TestRunner 对象运行 TestSuite 数组 |
run (TestRunner) | 运行测试套件 |
run (TestCase) | 运行与测试用例对应的测试 |
runInParallel | 并行运行 TestSuite 数组中的所有测试 |
类
matlab.unittest.TestCase | 所有测试类的超类 |
matlab.unittest.TestSuite | 对要运行的测试进行分组的基础接口 |
matlab.unittest.Test | 单一测试的设定 |
matlab.unittest.TestRunner | 用于在 matlab.unittest 框架中运行测试的类 |
matlab.unittest.TestResult | 运行测试套件的结果 |
包
matlab.unittest | MATLAB 单元测试框架中各种包和类的汇总 |
matlab.unittest.qualifications | MATLAB 验证接口中的类摘要 |
matlab.unittest.constraints | MATLAB 约束接口中的类摘要 |
matlab.unittest.fixtures | MATLAB 套件界面中的类的摘要 |
matlab.unittest.parameters | 与 MATLAB 单元测试参数关联的类的摘要 |
matlab.unittest.plugins | MATLAB 插件界面中类汇总 |
matlab.unittest.selectors | MATLAB 选择器接口中的类摘要 |
Simulink.sdi.constraints.MatchesSignal | Constraint that compares time series data with tolerances using the Simulation Data Inspector (自 R2019a 起) |
主题
编写测试
- 在 MATLAB 中编写基于类的单元测试
要测试 MATLAB 程序,可使用验证机制来编写单元测试,这些验证是用于测试值和对失败进行响应的方法。 - 使用类来编写简单测试用例
编写基于类的单元测试来确定程序的正确性。 - 使用类来编写设置代码和拆解代码
指定一个测试类中在每个Test
方法或所有Test
方法之前和之后运行的设置和拆解代码。 - 使用共享脚手架编写测试
创建测试时,跨测试类共享脚手架。 - 标记单元测试
使用测试标记将测试划分为多个类别,然后运行具有指定标记的测试。典型的测试标记可标识特定功能或描述测试类型。 - Insert Test Code Using Editor
Write a parameterized test interactively by using the options in the MATLAB Editor. - 验证、断言及其他验证一览表
使用验证、假设、断言和致命断言来测试值和响应失败。
编写参数化测试
- 在基于类的测试中使用参数
使用参数来提供测试要迭代使用的数据。 - 创建基本参数化测试
通过创建在Test
methods
块中参数化的测试来测试函数。 - 创建高级参数化测试
创建在TestClassSetup
、TestMethodSetup
和Test
methods
块中参数化的测试。 - Define Parameters at Suite Creation Time
Use aTestParameterDefinition
method to define parameters at test suite creation time. - 在参数化测试中使用外部参数
使用数据驱动的测试将变量输入插入参数化测试。
运行测试并分析结果
- 创建简单测试套件
此示例演示如何将测试合并到测试套件中,无论它们是按数据包和类还是文件和文件夹(或同时按这两项)组织。 - 为各个工作流运行测试
了解运行测试的不同方法。 - Run Tests Using Test Browser
Run your tests interactively by using the test browser. (自 R2023a 起) - 在编辑器中运行测试
在编辑器或实时编辑器中工作时运行测试。 - 分析测试用例结果
以下示例演示如何分析测试运行程序返回的信息。 - 分析失败的测试结果
此示例说明如何识别和处理失败的测试。 - 重新运行失败的测试
快速、方便地重新运行失败的测试。 - 动态筛选的测试
假设失败会生成标记为Incomplete
的已筛选测试,而不会生成测试失败。要避免生成未执行的测试代码,请监视已筛选的测试。 - 以编程方式访问测试诊断
以编程方式访问测试框架在测试结果上记录的诊断信息。 - 向测试运行程序添加插件
此示例演示如何向测试运行程序添加插件。 - Types of Code Coverage for MATLAB Source Code
Use different types of code coverage to analyze your MATLAB source code. - Collect Statement and Function Coverage Metrics for MATLAB Source Code
Collect and analyze information about statement and function coverage for your MATLAB source code. - 编译 MATLAB 单元测试
创建一个独立应用程序,在未安装 MATLAB 的目标计算机上运行您的测试。