simulinktest

Smulink Test Notebook

    • Subsystem Test
    • 使用Testharness对模型进行测试
    • ------------------------分割线--------------------------------------------

Simulink Test 为模型的仿真,测试,验证和代码生成提供工具;
它包括Test Sequence(用于构建复杂的测试序列和仿真结果)和Test Manager(用于管理和执行测试)
Simulink Test支持功能,基线,等效性和背对背测试,包括软件在环测试,处理器在环测试和硬件在环测试。
通过创建Test Harness可以实现模型和测试的分离。同时支持测试报告的生成,review测试结果等测试功能。
Key Features:

  • Test harness for subsystem or model testing
  • Test sequence block for running tests and assessments
  • Pass-fail criteria, including tolerances, limits, and temporal conditions
  • Baseline, equivalence, back-to-back, and real-time testing
  • Setup and cleanup scripts for customizing test execution
  • Test Manager for authoring, executing, and organizing test cases and their results
  • Customizable report generation for documenting test outcomes

Subsystem Test

Test harness可以理解成一个黑盒,把,模型装进去,输入输出印出来,然后再里面编写运行Test Sequence并和Test assessments做比较得出结果。
1 打开示例模型

sltestHeatpumpExample
simulinktest_第1张图片

simulinktest_第2张图片
simulinktest_第3张图片

使用Testharness对模型进行测试

  1. 在模型上创建testharness
    Analysis-Test Harness-Create for Model
    simulinktest_第4张图片

  2. 选择如上图箭头所示,在生成的testharness里面会自动创建Test sequence,同时可以重命名harness名称。

  3. 选择“add separate assessment block 会在生成的test harness里面多生成一个test assessment序列”
    note:一个模型可以创建多个Test harness ,通过manager test可以选择或删除对应的test harness。
    simulinktest_第5张图片

  4. 双击打来test sequence会发现,根据模型设置已经自动生成了输入和输出端口信息,
    simulinktest_第6张图片
    根据端口信息即可添加自己的测试用例,用例编辑的语法遵循stateflow。


------------------------分割线--------------------------------------------

针对Test Sequence的编辑,如果测试用例太多,逐个添加未免太麻烦…
so,选择使用m文件直接生成的方式或许更快一点。
simulinktest_第7张图片
matlab为test sequence提供了以上函数,目前使用带框的两个来满足我的需求。
通过c#创建一个小工具
simulinktest_第8张图片
将测试用例自动生成然后根据m文件的模板生成test sequence m文件。
然后再放到matlab中运行!
节省时间!
解决人为添加出错的风险!

你可能感兴趣的:(matlab)