将自定义编写的 MUnit 脚本的结果集成为测试
在此示例中,您通过链接到测试脚本来集成 MATLAB® xml 单元测试的结果。需求编辑器中的验证状态反映了测试结果。此示例使用名为 counter_req
的需求集文件和名为 myMUnitResults.xml
的 XML 单元测试文件。该文件包含一个名为 testCounterStartsAtZero
的测试用例。
注册自定义文档接口
在创建链接之前,您需要从需求集文件中注册自定义文档接口。在需求编辑器中打开需求文件 counter_req.slreqx
。
myReqSet = slreq.open("counter_req.slreqx");
注册集成 MUnit 测试文件结果的自定义文档接口。
rmi register custom_mymljunitresults
GetResultFcn
函数中的自定义逻辑定位与测试用例相对应的结果文件并从该 XML 文件中获取结果。该测试通过采用 XML 插件的自定义测试运行器来运行,并产生 JUnit 输出。XML Plugin 类创建一个插件,将测试结果写入名为 myMUnitResults.xml
的文件。
如果注册命令返回警告,则必须取消注册该文件并再次运行该命令。要取消注册该文件,请输入 rmi unregister custom_mymljunitresults
。
创建链接
使 struct
包含外部测试的属性。要创建链接,请在命令提示符下输入:
externalSource.id = "testCounterStartsAtZero"; externalSource.artifact = "counterTests.m"; externalSource.domain = "custom_mymljunitresults";
与该链路相关的需求其 SID 设置为 2。要查找与链接相关的需求,请输入:
requirement = find(myReqSet,Type="Requirement",SID=2);
要创建链接,请输入:
link = slreq.createLink(requirement,externalSource);
此命令创建测试用例 testCounterStartsAtZero
与 SID 为 2 的需求之间的链接。
为了避免结果过时,请确保结果文件的时间戳比链接创建的时间戳新。打开 myMUnitResults.xml
,在文件中进行虚拟更改并再次保存以获取最新时间戳。
在需求编辑器中,链接出现在右侧窗格中的链接下。
查看验证状态
要查看验证状态,您需要先更新需求集的验证状态。在 MATLAB 命令提示符下,键入:
updateVerificationStatus(myReqSet)
要查看需求编辑器中的验证状态列,请确保选择了 列>验证状态。更新后,获取需求的验证状态:
status = getVerificationStatus(myReqSet)
status = struct with fields:
failed: 0
justified: 0
none: 2
passed: 1
total: 3
unexecuted: 0
需求编辑器显示通过或失败的整个需求集的验证状态。
testCounterStartsAtZero
的需求的验证状态已完全验证。打开需求编辑器查看验证状态:
myReqSet = slreq.open("counter_req.slreqx");
需求编辑器显示需求集每个需求的验证状态。counterSetsValue 的需求的验证状态已完全验证。
验证状态显示,三项测试中,有一项测试通过。点击刷新可查看需求编辑器中需求的验证状态。
取消注册自定义文档接口。
rmi unregister custom_mymljunitresults