如何在MATLAB / Simulink的单元测试框架中访问测试索引?

时间:2019-04-16 17:34:27

标签: unit-testing testing simulink large-scale

我开始对Simulink模型进行单元测试。我以以下blog为起点。我的测试功能目前与此类似:

function tests = exampleTest
tests = functiontests(localfunctions);
end

function setupOnce(testCase)
testCase.TestData.mdlName = 'myModel';
load_system(testCase.TestData.mdlName);
end

function teardownOnce(testCase)
close_system(testCase.TestData.mdlName, 0)
end

function test1(testCase)
set_param([testCase.TestData.mdlName, '/mySubsystem'], 'myMaskParameter','1')
set_param(...);
set_param(...);
sim(testCase.TestData.mdlName);
testCase.verifyEqual(mySubsystemOutput,1)
end

function test2(testCase)
...
end

现在,我想更改此脚本,以便在我要创建很多测试(例如-> 100)时可以轻松快捷地进行修改。我正在尝试寻找一种初始化变量的方法,该变量将包含每个单元测试的所有参数(即我在set_param中声明的参数)(甚至可能是预期值)。我认为set_param可以放在function setup(testCase)中,而不是放在单独的测试中,这样会删除代码中的许多行。但是,要实现这一点,我需要知道testCase的实际索引。我没有在文档或示例中找到有关访问此信息的任何方式。有办法吗?另外,我的方法是做我想做的事情的一种好方法吗(即重新组合在公共函数中更改的变量,以限制需要修改的行数)?

0 个答案:

没有答案