Software-in-the-Loop代码覆盖率
这个例子展示了如何收集代码覆盖率指标从一个模型参考使用software-in-the-loop (SIL)模式。
生成代码覆盖率结果
该模型slvnvdemo_counter_harness
是一种利用模型,它使用一个信号编辑块指定输入模型参考吗slvnvdemo_counter
模型。
模型配置为覆盖,但模拟模式设置正常的
。在正常模拟模式,你只能收集覆盖率数据模型。收集software-in-the-loop覆盖,使用下列方法之一:
从一个模型参考,设置模拟模式块引用模型的参数模型的块。点击模型块
slvnvdemo_counter
,然后单击模型块选项卡。集模拟模式,Software-in-the-Loop(银)
。的角落块图标变黑和(SIL)出现在模型名称。
在应用程序选项卡上,单击覆盖分析仪。然后,在报道选项卡上,单击分析报道。万博1manbetx仿真软件生成的代码覆盖率®收集覆盖率的引用子系统使用SIL模拟模式。
使用硅/公益诉讼管理器应用程序运行模拟。使用这种方法,当你想收集顶部覆盖模型和被引用的模型,或者当覆盖率分析的范围被设置为
整个系统
。在应用程序选项卡上,单击银/公益诉讼经理。点击运行验证。万博1manbetx仿真软件生成的代码覆盖率®收集覆盖率银/公益诉讼的模拟。请注意,如果你想收集顶部覆盖模型,分析报道按钮总是正常模式模拟运行,不产生代码覆盖率结果。
对覆盖配置模型的更多信息,见指定覆盖选项。
视图的覆盖率结果报道的细节
当模拟完成,仿真软件®打开万博1manbetx代码和报道的细节窗格。您可以查看这些窗格中只有一个。的代码窗格中打开默认情况下,包含的细节从模型生成的代码。底部的代码窗格中,单击报道的细节选项卡。
窗格中显示消息报道没有记录
slvnvdemo_counter_harness
。这个消息似乎因为模型配置为收集覆盖率为模型参考slvnvdemo_counter
而不是顶级模特,slvnvdemo_counter_harness
。双击模型块slvnvdemo_counter
为这个模型参考看到报道的结果。
滚动到顶部报道的细节窗格中看到这是银模式总结报道。
点击细节查看细节覆盖率报告。本节列出了组织的代码覆盖源文件,函数调用这些文件和个人保险客观结果的功能。
在模型中,点击开关块叫做限制
去看细节的模型对象部分的报告,列出了每个模型的表达式和函数对象。例如,开关块限制
收到决定和声明代码覆盖线48岁,50岁和53岁的功能slvnvdemo_counter.c
和覆盖的表达式rtb_inputGElower
。
在代码视图中查看覆盖率结果
您还可以看到代码覆盖率结果视图由嵌入式程序员®。底部的报道的细节窗格中,单击代码。
每一行的代码有一个注释,指示是否完全覆盖。例如,40有以下注释行:
^年代
在声明中rtb_inputGElower
颜色的绿色,表明行和接收完整执行语句覆盖。^特遣部队
条件下rtb_input > = * rtu_lower
颜色的绿色,表明真实和虚假的情况下执行的条件和条件有充分条件覆盖。
关于注释代码视图的更多信息,请参阅代码覆盖率模型的Software-in-the-Loop (SIL)模式和Processor-in-the-Loop(公益诉讼)模式(嵌入式编码)。
创建和查看一个独立的覆盖率报告
创建一个独立的代码覆盖率报告,报道选项卡上,单击生成报告。代码覆盖率报告包含一个部分显示生成的代码。
每个代码语句和逻辑块包含一个评论或一组评论,描述源生成的代码块。每个评论还包含一个链接,你又回到援助的模型和模型到代码的映射。