装备电子系统的研发、测试、保障解决方案中心

嵌入式软件灰盒测试DT10
产品中心 嵌入式软件灰盒测试DT10
产品概述

DT10是一自动化的软件测试调试工具,无需依赖任何OS 和CPU,支持CC++、Java、C#多种语言,用于动态测试和调试,可对运行时目标程序进行长时间跟踪,适用于开发测试的各个阶段。

DT10实现了灰盒测试,这是一种介于"黑盒测试""白盒测试"之间的测试方式。在知道软件和系统的内部构造情况下,通过类似黑盒测试的方法,对功能规格说明、需求文档、软件和系统本身进行较细致的测试。它会随着设计和源码的变化,对测试用例个数进行删减,也可以通过更少的测试用例查找到最可能产生bug的地方。不只软件内部的测试,连同CPU周边的传感器端口等硬件状态也都会和执行路径一起被验证,所以可以在同一个时间测试软件和硬件的整个运行过程测试结果自动产生报告。开发者和QA人员都能利用本工具提升产品质量,使得工作更为高效。

DT10 软件的界面上,可以输入运行时间、周期时间、参数、变量的设计值。除了输入的设计值可以在同一个页面(一览表)做管理之外,还可以当作设计书被导出。这些设计值,将在测试过程中被使用,可以和目标板上实际测量值做对照,如出现与设计值有出入的状况,系统会有警告弹出,以此掌握问题的状况。

DT10非常适合不停止软件执行的同时进行跟踪调试。因为可以取得并分析︰任务的变化、函数的周期时间、运行时间、覆盖率、变量值的变化,所以整个调试的效率会大幅提升。就连不容易重现的问题,只要能重现次,也可以从跟踪数据里来分析原因。所以通过长时间运行测试及修正是非常高效的方式。


功能特性

设备组成

软件组成:DT10安装文件。支持硬件在线测试,支持软件在线测试,支持主机平台测试。

硬件组成:如下图。由主机、电源、连接模块、USB连接线、模拟信号测试盒等设备构成。


1.jpg



连接方式


2.jpg

用户可自行选择6种连接方式:

异步总线连接:使用NORFlash Memory的总线连接

SD Card I/F连接:使用SD Card/Micro Card Slot连接

GPIO连接:根据空闲的埠数不同,可以自行选择4 bit parallel/3线式Serial

Ethernet连接:可以通过UDPTCP/IP(Server,Client)来连接

CAN连接

UART连接


软件安装环境

捕获.JPG


主要功能


获取程序运行时覆盖率,包括语句覆盖和分支覆盖。


3.jpg


4.jpg

实时覆盖率(Real Time Coverage)

通过实时覆盖率,用户可以实时的看到覆盖率情况,比如你在目标版上操作某个按钮,从而触发某行代码,此时在目标板执行过程中,即可在DT10的窗口中实时的看到覆盖率数据。

性能评估和测试

DT10可监测每个函数的执行时间和周期时间,也可监测系统中任意两行代码之间的执行时间以及周期时间。对于多任务的系统而言,DT10还可监测CPU压力。


5.jpg


深入每个具体函数内部,查看函数每次执行时间,在设置时间阈值的基础上将不符合预期的执行时间用红色高亮显示。对每次执行时间,还可同步显示执行的代码路径。


6.jpg

执行时间的统计图,帮助用户了解某个函数执行时间的主要区间,同时如果发现某低频率的时间出现,那么作为性能分析的人则需要对此重点分析,因为执行时间非常短,并且在系统长时间执行的情况下,该执行之间只出现一次,那么极有可能这一次的执行逻辑存在问题,因为它与多数执行时间差异太大。


7.jpg

通过可视化的方式帮助用户理解代码内部执行逻辑,了解在系统执行过程中,各个函数任务跳转情况。



8.jpg


9.jpg

设置目标系统指定接口上的变量、参数的预期值。

DT10中,我们可以通过DTPlaner设置变量、参数、包括函数执行时间、周期时间的期望值属性。在目标系统执行过程中,实际值与期望值不符时,DT10醒目地提示此处与期望值不符。这对于自动验证边界值很有帮助,对于后续版本的回归测试也有帮助。



10.jpg


11.jpg



典型应用

使用流程

应用场景