TESSY中文网站 > 最新资讯 > TESSY怎么采集覆盖率 TESSY覆盖率类型怎么选更合适
TESSY怎么采集覆盖率 TESSY覆盖率类型怎么选更合适
发布时间:2026/01/26 16:37:34

  做单元测试时,覆盖率不是为了把数字做高,而是为了证明测试确实触达了关键逻辑分支,能支撑评审与合规交付。TESSY采集覆盖率的难点通常在两处:一是编译口径与插桩执行口径不一致导致数据不稳定,二是覆盖率类型选得不匹配导致整改成本偏高。下面按采集流程、类型选择、结果固化三条线,把每一步怎么点、怎么配写清楚。

  一、TESSY怎么采集覆盖率

 

  覆盖率采集要先保证工程能稳定构建并可重复执行,再让覆盖率数据与某一次测试运行绑定。不同版本界面名称可能略有差异,你以本机界面显示为准,但操作路径的逻辑一致。

 

  1、先把测试对象与编译口径配置到可构建状态

 

  在左侧工程树选中目标模块,右键选择【New】→【Test Object】创建测试对象;双击打开测试对象属性页,在【Compiler】里选择与你工程一致的编译器配置,在【Include Paths】里补齐头文件路径,在【Defines】里补齐关键宏定义,再点击【Apply】保存。

 

  2、把被测源文件与依赖文件按同一口径纳入构建

 

  在测试对象里打开【Sources】页签,点击【Add】把被测源文件加入列表;对依赖的公共源文件与配置文件,按工程真实构建方式加入或引用,避免只加头文件导致预处理分支与真实编译不一致,最后点击【Build】先跑一遍构建验证。

 

  3、开启覆盖率采集并选择插桩或等价采集方式

 

  在测试对象属性里进入【Coverage】页签,勾选【Enable Coverage】启用覆盖率;在覆盖率实现方式处选择与当前工具链匹配的采集方式,确认输出目录为可写路径后点击【Apply】,再回到测试对象界面点击【Rebuild】让配置生效。

 

  4、执行测试并把覆盖率与本次运行绑定

 

  在测试集界面选择要执行的用例集合,点击【Execute】运行;执行前建议在运行设置里勾选【Clean Results】清理旧结果,避免历史数据混入;执行完成后进入【Coverage】视图,确认本次运行时间与用例集合与结果一致,再保存当前结果集。

 

  5、生成覆盖率报告并导出为可审计文件

 

  在覆盖率视图确认统计口径后,点击【Report】进入报告生成界面,选择【Coverage Report】并勾选需要的明细级别,例如文件级与函数级,点击【Generate】生成报告;生成后点击【Export】导出为PDF或HTML,并把文件名带上版本号与日期,便于回溯。

 

  二、TESSY覆盖率类型怎么选更合适

 

  覆盖率类型选择要跟安全目标、风险等级与测试阶段匹配,不要一开始就把高成本口径全开。建议先定团队默认口径,再对关键模块按需提高要求,并把选择理由写进评审材料里。

 

  1、先用语句覆盖做入门门槛,快速暴露未触达逻辑

 

  在测试对象属性进入【Coverage】页签,先勾选【Statement Coverage】作为基础口径,点击【Apply】后执行一轮全用例;语句覆盖适合用来发现完全没跑到的文件、函数或异常分支,整改路径通常也更直接。

 

  2、需要验证分支走向时再启用分支覆盖

 

  当代码存在大量条件判断与错误处理分支时,在【Coverage】页签勾选【Branch Coverage】,再点击【Rebuild】触发重新构建与采集;分支覆盖更关注每个判断的真分支与假分支是否都被执行,适合用来压实关键控制逻辑的测试充分性。

  3、条件覆盖用于检查复合条件的子条件是否被触发

 

  当你们的判断条件经常是多项组合,例如多路传感器校验或状态机切换条件,在【Coverage】里勾选【Condition Coverage】并重新执行测试;条件覆盖更容易发现某个子条件永远不为真或永远不为假,这类问题如果只看分支覆盖可能不明显。

 

  4、对高安全要求模块再引入MCDC覆盖

 

  当评审要求对复合条件的独立影响进行证明时,在【Coverage】中勾选【MCDC Coverage】并对关键用例做补充设计;启用后建议先用少量核心用例跑通采集链路,再扩到全量,避免一次性引入导致用例设计与执行成本激增。

 

  5、用函数覆盖与调用可达性做辅助,不把它当最终充分性证据

 

  在【Coverage】里勾选【Function Coverage】可以快速确认接口是否被触达,适合配合接口矩阵做检查;但它不能替代分支、条件或MCDC对逻辑充分性的证明,建议把它定位为入口覆盖与接口触达的辅助指标。

 

  三、TESSY覆盖率结果怎么固化复盘

 

  覆盖率数字本身不难拿到,难的是让它在不同人、不同机器、不同迭代里保持同一口径,并能解释为什么变化。把结果固化成基线,配好过滤规则与证据链,评审时就能直接对照,不需要临时补材料。

 

  1、先固定版本与配置基线,避免口径随手被改

 

  在工程执行前,把测试对象配置与用例集状态锁定到同一发布点;在TESSY里对关键配置页面点击【Apply】后导出配置摘要,点击【Export】保存为配置文件或截图归档,并把源码版本号写进报告首页,确保结果可追溯。

 

  2、对第三方与生成代码做范围隔离,减少噪声波动

 

  在测试对象的文件选择或过滤设置里,使用【Filter】把third party与generated等目录排除在覆盖率统计之外;排除后点击【Rebuild】并重跑一次,确认报告里的文件清单已按预期收敛,避免外部代码变动把你们的趋势带偏。

 

  3、把未覆盖项拆成可执行整改清单

 

  在【Coverage】视图切换到未覆盖明细,按文件或函数排序,优先找出完全未触达的模块与关键错误处理路径;对每一条未覆盖项,记录对应的用例缺口或环境缺口,再回到测试集点击【New Test Case】补充用例,补完后再次点击【Execute】验证闭环。

 

  4、用同一份报告模板做周期对比,减少解释成本

 

  每次生成报告时都用相同模板与相同导出格式,进入【Report】选择同一套字段与层级,再点击【Generate】与【Export】;把报告存入同一目录结构并按日期排序,后续复盘只需对比两份报告差异即可定位波动来源。

  5、把覆盖率与评审记录挂钩,形成可审计证据链

 

  在评审纪要中引用覆盖率报告文件名与版本号,并把关键结论写清楚,例如哪些模块按语句加分支达标,哪些模块按MCDC补测完成;纪要与报告一起归档,评审抽查时可以从纪要直接定位到对应报告与执行结果。

 

  总结

 

  TESSY怎么采集覆盖率,关键是先把测试对象的编译口径与依赖配置对齐,再在【Coverage】里启用采集并通过【Execute】把覆盖率与本次运行绑定,最后用【Report】导出可回溯的报告。TESSY覆盖率类型怎么选更合适,建议从语句覆盖与分支覆盖起步,按模块风险逐步引入条件覆盖与MCDC,并把选择理由与整改清单固化到报告与评审记录里,这样覆盖率才能稳定支撑交付与审核。

读者也访问过这里:
135 2431 0251