1. 从零开始搭建Tessy测试环境
第一次接触Tessy时,我对着全英文的界面有点发怵。但实际用下来发现,这个工具的逻辑其实非常清晰。我们先从最基础的工程创建说起,这里有几个新手容易踩的坑需要特别注意。
安装Tessy时建议选择默认路径,我试过自定义路径带空格的情况,结果导入头文件时各种报错。新建工程时弹出的第一个对话框,工程名称这里要像对待C语言变量名一样谨慎——只允许字母、数字和下划线,中文字符和空格都是禁止的。有次我手快写了"测试工程",结果后续所有操作都无法进行,不得不重新开始。
创建测试集时有个隐藏技巧:右键点击工程名称时,弹出的菜单里"Add Test Set"和"New Test Set"功能完全一样。但如果你在左侧导航栏空白处右键,会发现只有后者可用。这个细节官方文档没提,是我反复尝试才发现的。
选择编译器环节更是个分水岭。GNU GCC编译器对新手最友好,但如果你在用IAR或Keil开发实际项目,就需要在TEE标签页手动添加。这里有个冷知识:Tessy 4.2之后版本开始支持Clang,但需要单独安装插件。我建议先用GCC跑通流程,再考虑其他编译器。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 导入源代码的隐藏技巧
很多人以为导入代码就是简单的文件拖拽,其实Tessy在这步藏着不少玄机。就拿isValueInRange这个函数来说,它的原型可能是这样的:
c复制int isValueInRange(int value, int min, int max) {
return (value >= min) && (value <= max);
}
在Compiler窗口添加头文件路径时,有个反常识的操作:路径中的斜杠必须用正斜杠(/)而不是反斜杠()。即使你在Windows系统下,也要遵循这个规则。我有次花了半小时排查编译错误,最后发现是路径分隔符的问题。
代码分析阶段最容易忽略的是预处理定义。如果你的头文件里有用到#ifdef条件编译,记得在"Preprocessor Definitions"里补上对应的宏定义。有次我测试覆盖率始终上不去,后来发现是漏定义了DEBUG宏,导致半个函数的代码被编译器直接跳过了。
TIE(Test Interface Editor)界面看似简单,实则暗藏杀机。设置输入输出参数时,**指针类
