本文主要介绍SkyEye图形化界面(V3.2.5)中覆盖率测试的使用技巧,后续将持续更新更多使用技巧。SkyEye图形化界面,操作简单、易于理解、上手快,各功能模块区分明晰,且技术支持随时在线。若各位朋友感兴趣的话,可订阅迪捷软件公众号,也可联系官方获取试用版(迪捷软件 (digiproto.com))进行试用。

上篇文章介绍了SkyEye图形化界面的界面样式和项目层次结构,本文将着重展现如何灵活地应用SkyEye图形化界面的覆盖率功能。

01.如何开启覆盖率功能开关?

在大多数情况下,SkyEye命令脚本文件(.skyeye)内容如下图所示,其含义是搭建一块开发板,并向该板中烧写一段程序,这样一来,最简单的仿真启动脚本文件就完成了。

如何在这个基础上开启覆盖率功能呢?除了直接在SkyEye命令脚本文件中编辑覆盖率命令外,SkyEye图形化界面还提供了更为智能的方法,即通过选中工程右键,然后点击启动脚本来进行配置。

选择 enable-codecov命令,参数也都提供了备选项,可根据需求自主选择。参数1:需要计算覆盖率的板卡名称,参数2:是否需要进行覆盖率融合。填好参数,点击确定并保存。到此覆盖率功能开关已打开。

02.如何生成覆盖率数据?

要执行覆盖率功能,首先需要成功加载、运行程序。因此,SkyEye图形化界面对覆盖率功能按钮进行了限制,必须先将工程进行加载、运行并暂停,功能按钮才会被使能。

按钮使能后,直接点击该按钮即可生成覆盖率数据并打开对应反汇编文件、源码文件。

*注意:只有导入了二进制文件对应源码工程,才会显示对应源码文件。

如何巧妙导入源码工程?SkyEye图形化界面对此也进行了智能化处理,用户只需选中工程下的source文件夹,点击右键选择导入源码,并选择对应源码工程即可完成操作。

03.如何查看覆盖率数据?

SkyEye在完成覆盖率执行后,会自动在编辑器中打开工程反汇编代码、源代码。

*值得一提小技巧:当编辑器打开多个文件又想同时去看时,选择文件名位置并拖动,将其向边界靠拢,当出现虚框时松开鼠标即可。如下图所示,即可实现同时查看多文件内容。

上图中源码文件及反汇编文件中代码分布行存在不同的背景色,这些背景色表示当前行的执行情况。其中,绿色代表已执行,红色代表未执行,黄色代表执行结果为true,紫色代表执行结果为false。

除了可以在编辑器直观了解到代码的执行情况外,SkyEye图形化界面还提供了覆盖率结果统计表,其中记录着总覆盖率各项数值以及各函数对应的各项覆盖率数值。

在覆盖率结果统计表中,SkyEye图形化界面还实现了与编辑器中代码进行联动的功能。

举例说明:如需查看表格中main函数对应的汇编码位置及其执行情况,只需要点击main函数在表格中对应行的倒数第二列的目标码详情即可。同理,如需查看其对应的源代码位置以及执行情况,只需要点击对应行的倒数第一列的源码文件即可。如下图所示:

04.如何导出覆盖率报告?

对于用户来说,在SkyEye 图形化界面中即时显示覆盖率数据显然是不够的,更重要的是能将生成的覆盖率数据进行保存、共享和复用。为此,SkyEye 图形化界面特别提供了导出覆盖率报告功能,并且支持HTML、Excel等多种格式的覆盖率报告。

和受到条件限制的覆盖率执行功能不同,导出覆盖率报告功能是随时可执行的。当然,这需要当前选中的工程已经执行过覆盖率功能。选中对应工程,可直接点击报告管理按钮打开HTML格式覆盖率报告,也可在报告管理的下拉框中任意选择所需操作。

05.如何理解覆盖率报告?

打开覆盖率报告(HTML格式),显示如下(浏览器):

报告左侧向导为各类覆盖率的统计结果,支持相互切换显示。

函数覆盖率的统计结果支持与SkyEye图形化界面中覆盖率结果统计表相类似的数据与代码联动的功能,即点击对应函数的目标码和源码按钮,即可跳转到对应汇编码、源代码位置。

其中,汇编码、源代码行背景颜色的含义,也与SkyEye图形化界面中,执行完覆盖率功能的编辑器显示相同。注意,在汇编码的显示部分,报告显示会比界面显示展现更多信息。为了让用户能够更好、更清晰地查看目标码信息,报告特别在目标码测试覆盖率详情信息中给各函数块进行了区分标识。

再简单介绍一下Excel格式覆盖率报告。相对于HTML格式覆盖率报告,Excel就简单些,它只记录了总覆盖率各项数值以及各函数所对应的各项覆盖率数值。

除上述讲解的覆盖率功能外,SkyEye图形化界面还支持异常触发,故障注入,查看内存,查看反汇编,查看、设置设备寄存器,查看、设置处理器寄存器,查看内存映射,远程调试,多工程时间同步等功能,还有更多使用技巧讲解持续上新中,敬请期待!

SkyEye图形化界面使用技巧篇(二)相关推荐

  1. SkyEye图形化界面使用技巧篇(一)

    目录 01.如何最快找到设备? 02.如何进行设备连线? 03.如何查看接口信息? 04.如何查看设备属性 05.如何美化设备布局? 06.如何将搭建成果保存以备下次使用? 本文主要介绍SkyEye图 ...

  2. GUI图形化界面(后篇)

    Swing编程目录 1.1 Swing概述 1.2 Swing基本组件的用法 1.2.1 Swing组件层次 1.2.2 AWT组件的Swing的实现 1.2.3 为组件设置边框 1.2.4 使用JT ...

  3. 【Vegas原创】安装rhel6.2,不能进图形化界面的终极解决方法

    安装的时候,千万不要一路下一步,you should know,linux不是windows那么的傻瓜. 方法一: 在倒数最后一步,选择Desktop,而千万不要下一步,默认选择Basic Serve ...

  4. win10远程登录Ubuntu14.04图形化界面

    一.使用场景 因工作原因,需要在window与Linux系统同时操作.由于虚拟机卡顿,十分影响工作效率,于是找领导又申请一台电脑. Ubuntu主机主要日常代码编译与git操作,window主机主要用 ...

  5. linux远程图形操作系统,二、Linux操作系统之操作篇-Xmanager 远程访问Linux图形化界面...

    2.Linux操作系统之操作篇-Xmanager 远程访问Linux图形化界面 红帽配置Xmanager 远程访问Linux: 1. 修改gdm配置文件,修改内容为粗体部分. /etc/gdm/cus ...

  6. 零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)

    1.图形化界面设计的基本理解 当前流行的计算机桌面应用程序大多数为图形化用户界面(Graphic User Interface,GUI). 即通过鼠标对菜单.按钮等图形化元素触发指令,并从标签.对话框 ...

  7. 入门C语言第三话:数组之实战篇——扫雷(进阶版——图形化界面,递归展开,播放音乐与音效,标记取消雷,记录雷的个数,鼠标点击,文末附有完整代码)

    文章目录 前言 每日鸡汤 基本思路 衔接基础班扫雷 准备阶段 正文 一.雷盘信息的存储 1.设置雷盘11*11与初始化 2.放置雷 3.放置雷周围的信息 二.图形化界面 1.创建与初始化窗口 2.加载 ...

  8. mac 连接hbase的图形化界面_Mac 视觉史(二):90 年代失败 Mac 操作系统大赏

    本文首发于 优设网,原标题<Mac 视觉史 vol.2:90 年代失败操作系统大赏>,少数派经授权转载,仅对文章格式略作调整. 在 第一篇 Mac 视觉史 当中,我梳理过了整个 Mac 系 ...

  9. 第五篇:kubernetes部署dashboard(图形化界面)

    说明: 总的目标是在k8s集群部署gitlab.jenkins,并且在本地提交代码到gitlab后jenkin流水线可以自动编译打包成为docker镜像然后部署到k8s中并实现客户端外部域名访问,在文 ...

最新文章

  1. IDC:2017年,40%的CIO将失去在企业中的领导地位
  2. 批处理技巧:循环固定目录的子目录,然后向每个子目录拷贝文件
  3. nginx 错误502 upstream sent too big header while reading response header from upst
  4. vba和python哪个好学-Python或将取代VBA,成为Excel官方脚本语言???
  5. 正则表达式 boost regexp的安装
  6. Lesson 7(12)神经网络的诞生与发展机器学习基本概念
  7. PTA-1022——Digital Library
  8. IBM调低DB 2价格,Oracle提高MySQL使用成本
  9. Black Box(POJ 1442·TREAP实现)
  10. Arm发布v9体系架构:Cortex-X2、Cortex-A710和Cortex-A510
  11. 【笔记】《编写高质量代码:改善c#程序的157个建议》-第1章 基本语言要素(SamWang)...
  12. 期货基础知识 第四节 期货交易流程
  13. 单片机流水灯显示方式
  14. Oracle 10.2.0.3使用Logminor工具和把system表空间变成locally
  15. 【101】Convertio-百种存储格式在线转换工具
  16. 网卡和网卡的驱动程序
  17. nodejs获取时间戳
  18. 佳能700d相机查看快门数
  19. 堆叠降噪自动编码器 Stacked Denoising Auto Encoder(SDAE)
  20. 狂神CSS3学习笔记

热门文章

  1. 计算机组成材质,计算机组成原理及应用期末复习材料
  2. Zookeeper(一)——简介
  3. python中math模块函数_python中math模块函数
  4. 节点部署_Pod在多可用区worker节点上的高可用部署
  5. java匿名内部对象_JavaSE 学习参考:匿名内部类和匿名对象
  6. python list转dict
  7. php.ini 没有pdo,php.ini 没有pdo怎么办
  8. 南林计算机课程表,南京林业大学课程表.doc
  9. http请求中必备的字符段_React Hooks中这样写HTTP请求可以避免内存泄漏
  10. 公司java框架让程序员变笨_框架会使程序员变笨吗?