Tessy 使用方法及经验总结

一、Quike Start 

1.1 打开Tessy4.1工具

1.2 打开工程路径,选择tessy.pdbx

1.3 执行程序

选择要执行的文件和标准C0,C1,MC/DC,选择Test data editor 并执行程序

1.4 导入模块

删除模块手重新导入

二、测试用例编写

缩写词      含义用途
Test module 是指测试的C文件
Test object 测试目标,指测试文件内的函数体。
Test Case 测试用例,针对一条分支的测试步骤的集合。
 
每个TEST CASE是独立的,所有的环境变量都会初始化到原始状态。
Test step测试用例的实际操作,定义输入输出参数的值。
MC/DCModified Condition/Decision Coverage条件修改,判定覆盖
C1Branch Coverage分支覆盖
C0Statement Coverage状态覆盖
TIETest interface editor
 
测试接口编辑,(函数使用的全局变量,内外部函数列表)用于增加stub函数。
TDETest Data editor具体测试case的变量值定义,测试case的编辑
IDAInterface Data Assigner测试接口数据分配。

 2.1 静态变量的定义

        静态变量在TDE窗口进行定义,静态变量有以下特性:

        1.在文件中定义的静态变量只能在文件中使用
        2.其赋值无法在TDE中直接定义,即使给定初始值也无效。因其进入函数后必定会初始化。
  只有在同一个CASE中设计多个步骤来解决此问题。

2.2 Declarations/Definitions

定义和声明变量,函数,结构体等。定义的变量和函数可以在stub函数中使用。
注意:
        1.此处定义的变量是在所以test case中都可使用,是全局的。一个函数只定义一次。

函数返回结构体指针:

        1.stub函数返回定义的结构体指针
        2.初始化返回结构体指针的内容。

函数输入参数定义:

例:在输入参数中指定dynamics的动态输入参数(x2598d40) ,再将动态输入参数指到定义的结构全指针(SduData2)

三、常见问题解决

3.1 测试未执行,警告对象接口发生变化

解决方法:

进入TIE界面,重新MAPPING接口。

3.2 没有可执行的测试对象

解决方法:

测试用例的输入数据不完整导致,需要用户填充要使用的数据。

3.3 模块无法分析成功

        模块无法成功分析,因部分类型没有声明,但查找代码发现已经有定义。

解决方法:

打开TESSY分析的头文件,查找相应的定义,发现没有找到。原因是头文件没有及时更新。
点Tessy_sync同步一下头文件即可。

3.4 运行测试时,错误出现在与其不相关的函数和变量

        模块无法成功分析,因部分类型没有声明,但查找代码发现已经有定义。

解决方法:

        将出错的函数里设置成打桩属性。

3.5 函数无法编辑

        函数的图标是灰色的,测试CASE也是灰色的,无法编辑运行时报No executable test object。

解决方法:

       全局变量没有赋值, 为输入的变量赋值。

3.6 代码直接访问寄存器地址出错

        代码直接访问寄存器地址的内容,导致TESSY无法识别报错。

解决方法:

        1.使用IF DEFINED TESSY字段屏蔽。

        2.访问寄存器时使用函数访问。

----------------------------------------------------------END-----------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值