主要内容

本页采用了机器翻译。点击此处可查看英文原文。

sltest.harness.SimulationInput 类

R2026b

命名空间: sltest.harness

为基于 MATLAB 的 Simulink 测试创建测试框架仿真输入

描述

使用 sltest.harness.SimulationInput 类的对象来指定要应用于测试框架模型的输入和更改,并使用这些更改运行仿真。这些对象是 Simulink.SimulationInput 对象的特定类型,专用于测试框架模型。SimulationInput 对象可以包含模型输入、初始状态、模型参数、模块参数、外部输入和变量。仿真结束后,框架恢复到仿真前的状态。sltest.harness.SimulationInput 对象用于与基于 MATLAB® 的 Simulink® 测试配合使用。sltest.harness.SimulationInput 是 Simulink.SimulationInput 的子类。

sltest.harness.SimulationInput 类是一个 handle 类。

类属性

密封
true
RestrictsSubclassing
true

有关类属性的信息,请参阅类属性。

创建对象

描述

in = sltest.harness.SimulationInput(owner,name) 创建并返回一个 SimulationInput 对象,并将 HarnessOwner 属性设置为 owner,将 HarnessName 属性为 name。

或者,使用 sltest.TestCase 的 createSimulationInput 方法创建 sltest.harness.SimulationInput 对象。

示例

属性

全部展开

拥有框架的模型或组件,指定为字符串、字符向量、模型或组件句柄。

要创建仿真输入对象的测试框架的名称,指定为字符串或字符向量。

除了 HarnessName 和 HarnessOwner 属性之外,sltest.harness.SimulationInput 还具有 Simulink.SimulationInput 的属性。

方法

全部展开

示例

全部折叠

这个 myBaselineTest.m 类定义文件定义了一个测试用例,用于比较一组基线值与仿真产生的值。此示例使用 SimulationInput 对象来设置框架变量值。请参阅在测试管理器中使用基于 MATLAB 的 Simulink 测试以获取包含基线数据文件和运行此测试所需的其他文件和命令的完整示例。

文件的第一行显示了从 sltest.TestCase 继承的内容。方法函数部分具有 Test 属性,包含 testOne 测试用例。测试用例加载模型,创建输入对象,设置一些变量值,仿真框架,并验证仿真和基线信号是否匹配。

classdef myBaselineTest < sltest.TestCase
   methods (Test)
      function testOne(testCase)
         testCase.loadSystem('sltest_ratelim');
         in = sltest.harness.SimulationInput('sltest_ratelim',...
            'sltest_ratelim_Harness1');           
         in = in.setVariable('t_gain',[0;2],
            'Workspace','sltest_ratelim');
         in = in.setVariable('u_gain',[-0.02;-4.02],
            'Workspace','sltest_ratelim');
         simOut = testCase.simulate(in);
         testCase.verifySignalsMatch(simOut,'baseline1.mat');
      end
   end
end

然后在命令行创建一个测试套件、一个测试运行器来运行测试、添加覆盖率,并将测试结果推送到测试管理器。打开测试管理器查看结果。

suite = testsuite('myBaselineTest');
runner = testrunner("textoutput");
runner.addModelCoverage;
runner.addSimulinkTestResults;
runner.run(suite);

版本历史记录

在 R2020b 中推出