您可以在内部将测试工具保存为模型SLX文件的一部分,或者在外部保存为单独的SLX文件。模型在内部或外部存储所有测试集具;在一个模型中不可能同时使用两种类型的利用存储。当您创建第一个测试工具时,您将选择内部或外部测试工具存储。如果您的模型已经有测试工具,您可以在工具存储类型之间进行转换。
如果您将模型存储在配置管理系统中,请考虑使用外部测试工具。外部测试工具使您能够在不更改模型文件的情况下创建或更改工具。如果您计划经常共享您的模型,请考虑使用内部测试工具来简化文件管理。创建或更改内部测试工具将更改您的模型SLX文件。内部和外部测试都提供了相同的同步、推送、重建和徽章接口功能。
看到创建测试装置并选择属性.
存储在外部的harness为每个harness使用一个单独的SLX文件,并且< modelName > _harnessInfo.xml
包含链接模型和线束的元数据的文件。更改测试线束可以改变harnessInfo.xml
文件。元数据和模型使用模型的唯一ID链接。默认情况下,在与模型相同的文件夹中创建和存储测试绑定元数据XML文件。如果需要,您可以将元数据XML文件移动到MATLAB路径上的其他文件夹。只要Harness元数据文件,模型和线束都在Matlab路径上,模型和其线束之间的链接仍然存在。
遵循以下外部测试线束的指导方针:
警告
不要删除或手动更改harnessInfo.xml
文件。删除harnessInfo.xml
文件可能会切断模型和机具之间的关系,不能从模型中重新生成。
的harnessInfo.xml
文件必须是可写的,以保存对测试工具或主模型的更改。
包含测试工具SLX文件的文件夹必须在MATLAB上®路径。
如果测试线束harnessInfo.xml
文件不在与模型的同一文件夹中,XML文件或其文件夹必须位于Matlab路径上。
如果将内部测试线束转换为外部测试线束,则新的SLX文件将保存到当前的工作文件夹。
如果将外部测试工具转换为内部测试工具,则外部SLX文件可以位于MATLAB路径的任何位置。
如果您的模型使用外部测试工具,那么仅使用保存>另存为.使用另存为将外部测试线束复制到新模型的目标文件夹,重命名线束,并保持线束信息电流。
在磁盘上复制模型文件不会复制与模型相关的外部设备。
只使用Simulink更改或删除测试线束金宝app®UI或命令:
要删除测试工具,请使用缩略图UI或sltest.harness.delete
命令。
要重命名测试工具,请使用工具属性UI或sltest.harness.set
命令。
要生成外部保存的测试工具的副本,请使用sltest.harness.clone
使用命令或保存测试工具到新名称保存>另存为.
在Simulink之外删除或重命名harness文件会导致不准确的金宝appharnessInfo.xml
加载测试工具的文件和问题。
您可以更改您的模型在模型生命周期的不同阶段存储测试线束的方式。例如:
使用内部测试工具开发您的模型,这样您就可以更容易地共享模型以供评审。当您完成设计并将模型置于变更控制下时,将其转换为外部控制。
使用配置管理模型作为新设计的起点。用外部装置测试现有的模型,以避免修改它。然后,创建现有模型的一个副本。转换为新开发阶段的内部控制。
要将测试线束存储器更改为外部(或内部):
导航到主模型的顶部。
在应用程序标签,在模型验证,验证和测试下,单击金宝app仿真软件测试.然后,在测试选项卡上,单击管理测试线束>转换为外带或者转换为内部脊.
对话框提供有关转换过程和受影响的测试装置的信息。点击是的接着说。
脊甲被改装了。
向外部测试工具的转换为每个测试工具创建一个SLX文件和一个工具信息XML文件< modelName > _harnessInfo.xml
.
相反,转换为内部测试工具会移动测试工具SLX文件和harnessInfo.xml
文件。
当模型组件具有测试线束时,徽章出现在块的右下方。要查看测试线束,请单击徽章。要打开测试工具,单击一个平铺。
要查看模型框图的测试装置,单击模型画布中的拉出图标。要打开测试工具,单击一个平铺。
要列出引用测试工具的打开的测试用例,单击徽章在测试线束画布中。您可以单击测试用例名称并导航到测试管理器中的测试用例。
您可以将测试线束导出到独立模型,这对于存档测试线束非常有用,或在不共享模型的情况下共享测试线束设计。
要导出单独的测试工具:
从单独的脊甲模型上应用程序选项卡,在模型验证,验证和测试,点击金宝app仿真软件测试.
在里面利用选项卡上,单击分离和出口.
在“Export Test Harness to Independent Model”对话框中,单击好的.
在“另存为”对话框中,为独立的harness模型输入一个文件名,然后单击好的.
这个设备转换成一个独立的模型。
转换从主模型中删除线束,并断开与主模型的关系。如果模型只有一个线束,它harnessInfo.xml
文件被删除。如果一个模型有多个线束,而你删除了其中的一个,那么harnessInfo.xml
文件被更新。
导出模型中的所有线束:
导航到模型的顶层。不要选择任何块。
在应用程序选项卡,在模型验证,验证和测试,点击金宝app仿真软件测试.
在里面利用选项卡上,单击分离和出口.
在“Export Test Harness to Independent Model”对话框中,单击好的.
在Save As对话框中,为单独的模型输入文件名并单击好的.
所有测试装置都被导出并转换为独立的模型。
导出从主模型中删除了线束,删除了harnessInfo.xml
文件,并破坏了与主模型的关系。
这个例子演示了克隆一个现有的测试工具,并将克隆的工具导出到一个单独的模型中。如果您想要创建一个测试工具的副本作为一个单独的模型,但是让测试工具与模型组件相关联,那么这将非常有用。
高级工作流程
如果您不知道要克隆的测试线束的确切属性,请使用它们sltest.harness.find
.您需要脊甲所有者ID和脊甲名称。
使用sltest.harness.clone克隆测试harness。
使用单独的模型导出测试线束sltest.harness.export.
.请注意,导出的模型和原始模型之间没有关联。导出的模型是独立的。
打开模型并保存本地副本
模型=“sltestTestSequenceExample”;open_system(模型)
将本地副本保存在MATLAB路径上的可写位置。
获取源测试工具的属性
属性= sltest.harness.find([模型' / shift_controller '])
属性= struct with fields: model: 'sltestTestSequenceExample' name: 'controller_harness' description: " type: 'Testing' ownerHandle: 10.0004 ownerFullPath: ' sltestsequenceexample /shift_controller' ownerType: 'Simulink. pr金宝appoperties ' . properties = struct with fields: model: 'sltestTestSequenceExample/shift_controller'子系统' isOpen: 0 canBeOpened: 1 verificationMode: 0 saveexternal: 0 rebuildOnOpen: 0 rebuildModelData: 0 postRebuildCallback: " graphical: 0 origSrc: 'Test Sequence' origSink: 'Test Assessment' synchronizationMode: 0 existingBuildFolder: " functionInterfaceName: "
克隆测试工具
使用sltest.harness克隆测试harness。克隆,ownerFullPath
和的名字
线束属性结构的领域。
sltest.harness.clone (properties.ownerFullPath properties.name,'ControllerHarness2')
保存模型
在导出工具之前,保存对模型的更改。
save_system(模型)
将测试线束导出到单独的型号
使用SLTEST.HARNESS.EXPORT导出测试线束。导出的型号名称是ControllerTestModel
.
sltest.harness.export([模型' / shift_controller '],'ControllerHarness2',...“名字”,'controllertestmodel')
清楚(“模型”) 清除(“属性”)close_system(“sltestTestSequenceExample”, 0)
此示例显示如何以编程方式删除测试线束。当您的模型在不同层次级别的多个测试线束具有多个测试线束时,使用程序化接口删除可能很有用。此示例演示如何创建四个测试线束,然后删除它们。
1.打开模型
Open_System(“sltestCar”);
2.创建两个脊传输
子系统,两个线束传动比
子系统。
sltest.harness.create (“sltestCar /传播”);sltest.harness.create (“sltestCar /传播”);sltest.harness.create ('SLTestCar / Serversion /传输比率');sltest.harness.create ('SLTestCar / Serversion /传输比率');
3.找到模型中的脊甲。
test_harness_list = sltest.harness.find (“sltestCar”)
test_harness_list = 1x5结构数组与字段
4.删除吊带。
为sltest. harness_list .delete(test_harness_list(k).ownerFullPath,...test_harness_list(k).name)结束
close_system (“sltestCar”,0);
金宝app仿真软件测试™使您能够将测试工具从源所有者移动或克隆到目标所有者,而无需编译模型。你可以移动或克隆:
子系统跨子系统利用。目标子系统也可以使用不同的模型。
跨库的库组件的利用。
子系统参考块集成到其他子系统参考块集成。
子系统参考块集成到子系统模型集成和子系统模型集成。
子系统参考块集成到子系统模型集成和子系统模型集成。
要移动或克隆绑带,请右键单击Simulink Canvas并选择金宝app测试线束>管理测试线束.“管理测试工具”对话框将打开并列出与中指定的子系统或块相关联的测试工具筛选人员.点击行动访问“移动”和“克隆”选项。
选择目标路径并命名测试线束。
转换a子系统或者Subystem参考块转换为模型引用时,测试集被转换为模型引用。利用在子系统方块被转换成方块图的线束。子系统中的嵌套利用被复制到模型引用中的相同块中。所有转移的线束都是模型参考中的内部线束。测试套接具在转移时可以重新命名。你可以看到反馈关于脊甲转移在完全转换面板或MATLAB命令行。
这些限制适用于转换a子系统或者Subystem参考块到模型引用:
SIL和PIL背带没有转移。
子系统的测试工具中的需求不会被转移。您必须手动复制它们。
模型引用转换顾问|sltest.harness.clone
|sltest.harness.create
|sltest.harness.delete
|sltest.harness.export.
|sltest.harness.find
|sltest.harness.load
|sltest.harness.move
|sltest.harness.open