主要内容

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(公益诉讼)模式(嵌入式编码)

创建和查看一个独立的覆盖率报告

创建一个独立的代码覆盖率报告,报道选项卡上,单击生成报告。代码覆盖率报告包含一个部分显示生成的代码。

每个代码语句和逻辑块包含一个评论或一组评论,描述源生成的代码块。每个评论还包含一个链接,你又回到援助的模型和模型到代码的映射。

相关的话题