此示例显示如何通过使用模型测试仪表板来解决模型要求和测试中的常见可追溯性问题。仪表板分析了项目中的测试伪影,并报告了质量和完整性测量的公制数据,例如可追溯性和覆盖范围,反映了行业公认的软件开发标准的准则,例如ISO 26262和DO-178C。仪表板小部件总结了数据,以便您可以跟踪基于需求的测试进度并修复仪表板亮点的空白。您可以单击小部件以打开具有详细信息的表,您可以在其中找到并修复不符合相应标准的测试伪像。
仪表板显示模型的测试数据,以及模型在项目中追踪到的工件。对于这个例子,打开项目并为工件收集度量数据。
打开项目。在命令行中,输入dashboardCCProjectStart
.
打开仪表板。在这方面项目选项卡,单击模型试验仪表板.
如果您以前没有打开项目的指示板,指示板必须标识项目中的工件,并跟踪它们到模型。要运行分析并收集度量结果,请单击跟踪和收集所有.
在里面伪影窗格,仪表板在模型层次结构中包含它们的组件模型下组织单元模型。诸如要求,测试用例和测试结果之类的工件出现在它们追踪的单元模型下。查看模型的度量结果db_DriverSwRequest
.在里面伪影窗格中,单击模型的名称。仪表板用来自模型的最新指标集合的数据填充小部件。
您可以使用模型测试仪表板中的叠加层,以查看是否符合小部件的度量标准结果,或者生成警告应审查度量标准结果。结果是符合要求,如果它们显示完全可追溯性,测试完成或模型覆盖率。在里面覆盖部分,确保兼容的和不一致的选择按钮。覆盖层出现在具有该类别的窗口小部件上。您可以在仪表板的右上角看到每个合规性类别中的小部件总数。
要查看指标的遵从性阈值,请指向覆盖图标。
您可以通过单击所选类别隐藏叠加图标覆盖部分。
有关每个指标的遵从性阈值的更多信息,请参见模型试验指标.
在这方面伪影小组,呢Untraced文件夹中显示了不能追溯到项目中的单元模型的工件。您可以检查此文件夹中的工件,以查看是否有任何需求应该由模型实现,但缺少链接。对于本例,将这些需求中的一个链接到实现它的模型块,并更新伪影面板反映链接。
在里面伪影面板,导航到需求Untraced>功能需求>db_req_func_spec.slreqx
>开关优先级.
在需求编辑器中打开需求。在这方面伪影面板,双击开关优先级.该要求描述了在多个开关同时开启的情况下,巡航控制系统采取行动的顺序。打开需求编辑器,选择需求。
打开模型db_Controller
.要从模型测试仪表板打开模型,请在伪影面板,展开文件夹db_Controller>设计并双击db_controller.slx.
.
该模型块DriverSwRequest
参考模型db_DriverSwRequest
,它控制当开关开启时,巡航控制系统采取行动的顺序。将这个模型块链接到需求。右键单击模型块并选择需求
>链接到需求浏览器中的选择
.
保存模型。在这方面模拟选项卡,单击保存.
保存需求集。在需求编辑器中,单击保存图标。
要更新工件的可追溯性信息,在模型测试仪表板中,单击跟踪工件.
这伪影面板显示了开关优先级要求下db_Controller>功能需求>db_req_func_spec.slreqx
.接下来,通过在仪表板中收集指标来查找工件中的可追溯性问题。
打开单位的仪表板db_DriverSwRequest单击本机的名称伪影面板。因为您通过添加链接更改了需求文件,仪表板小部件以灰色突出显示,以表明结果可能代表陈旧的数据。要更新单元的结果,请单击收集结果.
控件中的小部件测试用例分析仪表板的一部分显示了关于模型需求、模型的测试用例以及它们之间的链接的数据。这些小部件表明了在测试和可跟踪性方面实现的需求是否存在差距。
链接要求和测试用例
在模型中db_DriverSwRequest
, 这与测试相关的需求部分显示了模型中的一些需求缺失了到测试用例的链接。通过单击一个仪表板小部件来检查需求。然后,使用表中的链接打开工件并修复跟踪问题。
要查看有关未链接需求的详细信息,请参阅与测试相关的需求节,单击小部件链接.表格显示了在模型中实现的需求,但是没有到测试用例的链接。该表被过滤以只显示缺少到测试用例的链接的需求。对于本例,链接需求的测试设置开关检测
.
在需求编辑器中打开需求。在表格中,单击设置开关检测
.
在需求编辑器中,检查需求的详细信息。这个需求描述了放
按下开关。在需求编辑器中选择需求。
检查是否已经有一个开关行为的测试用例。要返回度量结果,在模型测试仪表板的顶部,单击db_DriverSwRequest.这与需求关联的测试部分显示一个测试用例与要求无关。
看到未链接的测试用例,在与需求关联的测试部分,点击链接.
要在测试管理器中打开测试,在表格中,单击测试用例设置按钮
.测试用例验证重新开始
开关。如果还没有交换机的测试用例,您将使用test Manager添加一个测试用例。
将测试用例链接到需求。在测试管理器中,对于测试用例,展开需求部分。点击添加>链接到选定的需求.追溯性链接指示测试用例设置按钮
验证要求设置开关检测
.
仪表板中的度量结果只反映了保存的工件文件。保存测试套件db_DriverSwRequest_Tests.mldatx
,在测试浏览器,右键单击db_DriverSwRequest_Tests
并点击保存.
保存需求文件db_req_func_spec.slreqx
.在需求编辑器中,单击保存按钮。
接下来,更新仪表板中的度量数据,以查看添加链接的效果。
在仪表板中更新度量结果
在模型测试仪表板中更新度量结果,以便它们反映需求和测试用例之间的可跟踪性链接。
要分析模型测试仪表板中的工件更改,请单击跟踪工件.当仪表板未分析的项目工件中有更改时,将启用该按钮。
在仪表盘的顶部,是陈旧的指标图标指示至少有一个指标小部件显示模型的陈旧数据。显示陈旧度量数据的小部件以灰色高亮显示。要刷新小部件,请通过单击重新收集模型的度量数据收集结果.
这测试用例分析小部件显示还有11个未链接的需求。这与需求关联的测试部分显示没有未链接的测试。通常,在运行测试之前,您可以通过添加测试并将它们链接到需求来调查和解决这些测试可跟踪性问题。对于本例,请保留未链接的工件,并继续运行测试的下一步。
在创建并链接验证需求的单元测试之后,运行测试以检查模型的功能是否满足需求。要查看测试结果和覆盖率度量的摘要,请使用测试结果分析仪表板的一部分。小部件突出显示测试失败和缺陷。使用底层工件的度量结果来解决问题。
执行单元测试
通过使用test Manager运行模型的测试用例。将结果保存为项目中的工件,并在模型测试仪表板中查看它们。
在测试管理器中打开模型的单元测试。在模型测试仪表板中伪影窗格,展开模型db_DriverSwRequest
.展开测试用例文件夹并双击测试文件db_DriverSwRequest_Tests.mldatx
.
在测试管理器中,单击跑.
要在模型测试仪表板中使用测试结果,导出测试结果并将文件保存在项目中。在这方面测试选项卡,结果部分,点击出口.为结果文件命名Results1.mldatx
并将文件保存在项目根文件夹下。
模型测试仪表板检测到您导出的结果并自动更新伪影小组来反映新的结果。控件中的小部件测试结果分析部分以灰色突出显示,表示它们显示的是陈旧的数据。要更新仪表板小部件中的数据,请单击收集结果.
解决测试失败和差距
在模型中db_DriverSwRequest
, 这模型测试状态节指示在最近的测试运行期间有一个测试失败,一个测试被禁用。打开测试并修复这些问题。
要查看禁用的测试,请在指示板中单击禁用小部件。该表显示了模型的禁用测试用例。
在Test Manager中打开已禁用的测试。在表中,单击测试减量按钮保存
.
启用测试。在里面测试浏览器,右键单击测试用例,然后单击启用.保存测试套件文件。
要查看失败的测试,请在指示板中单击失败的小部件。
在测试管理器中打开失败的测试。在表中,单击测试取消按钮
.
在测试管理器中检查测试失败。您可以通过使用测试结果和到模型的链接来确定是否需要更新测试或模型。对于这个例子,与其修复失败,不如继续检查测试覆盖率。
检查您运行的测试是否通过使用覆盖率度量完全执行了模型设计。对于本例,模型覆盖仪表板的一部分表明模型中的某些条件没有被覆盖。将光标放在小部件中的工具条上,查看条件覆盖率的百分比。对于这个例子,86.4%的决策被测试覆盖,4.55%的决策在覆盖过滤器中被证明是正确的。
查看决策覆盖率详细信息。点击决定酒吧。
在表中,展开模型工件。表格显示了模型的测试用例结果以及包含它们的结果文件。打开结果文件Results1.mldatx
在测试管理器中。
要查看详细的覆盖结果,请在覆盖范围内打开模型。在测试经理,在汇总覆盖结果部分,在分析模型列,点击db_DriverSwRequest
.
模型上突出显示的覆盖范围显示了测试用例未涵盖的点。对于未涵盖的一点,添加一个涵盖它的测试。找到模型元素实现的要求,或者如果没有,请为其添加一个要求。将新的测试用例链接到要求。如果不应覆盖该点,请使用过滤器证明缺失的覆盖范围。对于此示例,请勿修复丢失的覆盖范围。
一旦您更新了单元测试以解决故障和差距,就运行测试并保存结果。然后通过在仪表板中收集指标来检查结果。
在具有许多工件和可追溯性连接的项目中,只要对项目中的文件发生更改,您就可以监视设计和测试伪影的状态。更改工件后,检查是否通过更新仪表板中的跟踪数据和度量标准结果,检查是否存在下游测试影响。使用表来查找并修复受影响的工件。通过更新仪表板小部件在显示模型测试质量符合项目标准之前,跟踪您的进度。