测试模型使用MATLAB单元测试
你可以用MATLAB®运行编写的测试的单元测试框架金宝app®测试™.使用MATLAB单元测试框架:
允许您与MATLAB单元测试脚本、函数和类一起执行模型测试。
启用使用相同框架的模型和代码测试。
支持与持续集成(CI)系统(如Jenkins™)进行集成。
总体工作流程
使用MATLAB单元测试运行测试:
创建一个
TestSuite
从金宝app仿真软件测试文件。创建一个
TestRunner
.创建插件对象来自定义
TestRunner
.例如:的
matlab.unittest.plugins.TAPPlugin
根据用于某些CI系统的Test Anything协议生成一个结果流。的
sltest.plugins.ModelCoveragePlugin
指定模型覆盖率集合,并使覆盖率结果可以从命令行访问。
将插件添加到
TestRunner
.使用
运行
方法,或使用runInParallel
方法。
注意事项
使用MATLAB单元测试运行测试时,请考虑以下事项:
如果在测试管理器中禁用测试,则使用MATLAB单元测试对测试进行过滤,结果反映了一个失败的假设。
试验命名法的比较
MATLAB单元测试具有类似的特性金宝app仿真软件测试.例如,
如果测试用例包含迭代,那么MATLAB单元测试包含参数化。
如果测试文件或测试套件包含回调,那么MATLAB单元测试包含一个或多个回调fixture。
测试用例迭代和MATLAB单元测试参数化
参数化细节对应于迭代的属性。
金宝app仿真软件测试 |
MATLAB的单元测试 |
---|---|
迭代类型:照本宣科 |
参数化属性: |
迭代类型:表 |
参数化属性: |
迭代的名字 |
参数化的名字 |
测试用例迭代对象 |
参数化值 |
测试回调,MATLAB单元测试夹具
fixture依赖于测试文件中包含的回调。fixture不包括测试用例回调,它与测试用例本身一起执行。
回调中金宝app仿真软件测试 |
夹具在MATLAB单元测试 |
---|---|
测试文件回调 |
|
测试套件回调 |
|
文件和套件回调 |
异构 |
没有回调 |
没有固定 |
使用MATLAB®单元测试的基本工作流程
这个例子展示了如何为在Simulink®Test™中创建的测试文件创建和运行一个基本的MATLAB®单元测试。金宝app您可以创建测试套件、运行测试并显示诊断报告。
在运行此示例之前,暂时禁用验证失败导致的警告。
警告从Stateflow:运行时:TestVerificationFailed;警告从Stateflow: cdr: VerifyDangerousComparison;
1.在测试管理器中编写测试文件,或者从一个已存在的测试文件开始。对于这个示例,AutopilotTestFile
测试自动驾驶系统的一个组件的几个要求,使用验证
语句。
2.创建一个TestSuite
从测试文件中。
apsuite = testsuite (“AutopilotTestFile.mldatx”);
3.运行测试,创建TestResult
对象。的命令窗口返回警告验证
语句失败。
apresults =运行(apsuite);
运行AutopilotTestFile >基本设计测试用例 ================================================================================ 验证失败AutopilotTestFile > /要求1.3测试基本设计测试用例。--------------------- 框架的诊断 : --------------------- 失败条件:验证——>仿真软件测试经理结果:结果:2021 - 9 - 01 14:18:50 A金宝apputopilotTestFile / /要求1.3测试基本设计测试用例 ================================================================================ .完成AutopilotTestFile >基本设计测试用例 __________ 失败失败总结:名字不完整的原因(s ) =============================================================================================================== AutopilotTestFile >基本设计测试用例/要求1.3测试X验证失败。
4.如果需要查看测试例的详细信息,使用报告
财产的DiagnosticRecord
对象。记录显示在测试期间验证失败。
apresults.Details.DiagnosticRecord.Report
>基本设计测试用例/需求--------------------- Framework Diagnostic: --------------------- Failed criteria: Verification—> Si金宝appmulink Test Manager结果:结果:20121 - sep -01 14:18:50/AutopilotTestFile/基本设计测试用例/需求1.3测试'
启用警告。
警告在Stateflow:运行时:TestVerificationFailed;警告在Stateflow: cdr: VerifyDangerousComparison;
另请参阅
测试
|TestResult
|TestRunner
|TestSuite
|matlab.unittest.plugins包