TESSY中文网站 > 使用教程 > TESSY怎么设置浮点数比较容差 TESSY浮点数测试结果误判失败如何修正
教程中心分类
TESSY怎么设置浮点数比较容差 TESSY浮点数测试结果误判失败如何修正
发布时间:2026/09/29 16:43:18

  TESSY进行嵌入式软件单元测试时,浮点数比较是比较容易出现误判的环节。由于浮点数在计算机中采用二进制形式保存,小数运算过程中可能产生微小误差,即使程序逻辑正确,实际输出值和预期结果也可能存在极小差异。如果测试环境按照完全相等方式比较,就可能出现测试失败。实际项目中,浮点数测试通常需要设置合理的比较容差,让测试结果关注计算逻辑偏差,而不是忽略无意义的小数误差。

  一、TESSY怎么设置浮点数比较容差

 

  TESSY中的浮点数比较主要通过测试数据和比较方式进行控制,需要根据测试对象和软件计算精度选择合适的容差范围。

 

  1、确认浮点数测试对象

 

  设置比较容差前,需要先确认哪些测试变量属于浮点类型。

 

  ①、打开【TESSY Test Project】。

 

  ②、进入目标函数对应的【Test Interface】。

 

  ③、查看函数输入参数和输出变量。

 

  ④、确认数据类型是否为【float】或【double】。

 

  ⑤、选择需要调整比较方式的浮点变量。

 

  ⑥、进入测试数据设置页面。

 

  如果变量本身不是浮点类型,就不需要使用浮点比较容差,避免错误调整测试规则。

 

  2、打开测试结果比较设置

 

  TESSY需要在测试数据或结果比较配置中调整浮点判断方式。

 

  ①、打开【Test Data】窗口。

 

  ②、选择需要修改的测试用例。

 

  ③、进入【Expected Result】设置。

 

  ④、查看当前结果比较方式。

 

  ⑤、选择浮点数比较选项。

 

  ⑥、进入容差参数配置。

 

  不同TESSY版本界面名称可能存在差异,但通常需要在测试结果比较相关设置中调整浮点判断规则。

 

  3、设置绝对误差容差

 

  绝对容差适合结果数值范围比较固定的测试场景。

 

  ①、打开【Floating Point Comparison】设置。

 

  ②、选择【Absolute Tolerance】。

 

  ③、填写允许误差范围。

 

  ④、检查测试输出的小数精度。

 

  ⑤、保存当前比较设置。

 

  ⑥、重新执行测试用例。

 

  例如测试结果为0.5000001,而预期值为0.5000000,如果设置合理的绝对误差范围,TESSY可以识别两者属于允许范围内的结果。

 

  4、设置相对误差容差

 

  当测试数据范围变化较大时,相对误差通常更适合。

 

  ①、打开【Floating Point Comparison】。

 

  ②、选择【Relative Tolerance】。

 

  ③、设置允许比例误差。

 

  ④、检查最大和最小测试值。

 

  ⑤、保存比较规则。

 

  ⑥、重新运行测试。

 

  相对误差会根据实际数值大小判断偏差,对于不同数量级的浮点计算更加适用。

 

  5、针对单个测试变量调整容差

 

  部分项目中,不同浮点参数需要不同精度要求。

 

  ①、打开【Test Data Table】。

 

  ②、选择目标浮点输出变量。

 

  ③、进入【Value Comparison】配置。

 

  ④、设置该变量专用容差。

 

  ⑤、检查其他输出变量比较方式。

 

  ⑥、保存测试数据。

 

  这种方式可以避免为了一个低精度计算结果,降低整个测试项目的判断标准。

 

  二、TESSY浮点数测试结果误判失败如何修正

 

  浮点测试失败时,需要先判断是计算结果真的错误,还是由于比较精度设置不合理导致。直接修改期望值可能会掩盖真实问题,因此需要先检查误差来源。

 

  1、检查实际结果和期望结果差异

 

  ①、打开【Test Result】窗口。

 

  ②、查看失败测试用例。

 

  ③、比较【Expected Value】和【Actual Value】。

 

  ④、计算两者之间的误差范围。

 

  ⑤、判断误差是否超过业务允许范围。

 

  ⑥、确认是否需要调整容差。

 

  如果实际结果只存在很小的小数位差异,通常属于浮点计算误差;如果偏差较大,则需要检查程序逻辑。

  2、检查浮点数据类型差异

 

  float和double的精度不同,也可能导致测试结果不一致。

 

  ①、打开【Test Interface】。

 

  ②、查看变量数据类型。

 

  ③、确认源代码中的定义。

 

  ④、检查测试数据类型。

 

  ⑤、统一测试环境中的数据类型。

 

  ⑥、重新执行测试。

 

  例如源代码使用double计算,而测试数据按照float精度处理,可能导致结果比较出现差异。

 

  3、检查编译器浮点处理选项

 

  编译器优化可能影响浮点计算结果。

 

  ①、打开【Compiler Configuration】。

 

  ②、查看浮点相关编译参数。

 

  ③、检查优化等级设置。

 

  ④、确认测试环境和产品环境配置一致。

 

  ⑤、调整编译选项。

 

  ⑥、重新构建测试程序。

 

  不同编译器或者不同优化级别下,浮点计算顺序可能发生变化,导致最后几位小数存在差异。

 

  4、调整测试期望值

 

  部分情况下,测试数据本身的精度设置不合理,需要重新定义。

 

  ①、打开【Test Data】。

 

  ②、找到失败测试用例。

 

  ③、查看【Expected Result】。

 

  ④、根据实际计算精度修改期望值。

 

  ⑤、设置对应浮点比较容差。

 

  ⑥、重新执行测试。

 

  期望结果应该符合软件设计精度要求,而不是简单保留大量无实际意义的小数位。

 

  5、检查特殊浮点情况

 

  浮点测试还需要关注特殊值处理。

 

  ①、检查测试输入是否包含【NaN】。

 

  ②、检查是否存在【Infinity】。

 

  ③、确认零值比较方式。

 

  ④、检查异常输入处理逻辑。

 

  ⑤、调整测试数据。

 

  ⑥、重新运行测试。

 

  特殊浮点值通常不能按照普通数字进行比较,需要根据软件需求定义判断方式。

 

  三、TESSY浮点比较调整后怎么确认

 

  修改比较容差后,需要确认测试结果变化来自合理配置,而不是降低了测试要求。

 

  1、重新执行失败测试

 

  ①、打开【Test Execution】。

 

  ②、选择调整后的测试用例。

 

  ③、运行单个失败案例。

 

  ④、查看新的【Test Result】。

 

  ⑤、确认误差是否处于容差范围。

 

  ⑥、保存测试结果。

 

  2、检查整体测试影响

 

  ①、运行完整测试集。

 

  ②、查看【Test Report】。

 

  ③、检查其他浮点测试结果。

 

  ④、确认没有大量异常通过。

 

  ⑤、分析容差设置合理性。

 

  ⑥、更新测试配置。

 

  3、记录浮点比较规则

 

  ①、保存【Test Project】。

 

  ②、记录浮点比较参数。

 

  ③、记录编译器版本。

 

  ④、记录测试环境配置。

 

  ⑤、维护测试配置文档。

  总结

 

  TESSY浮点数测试出现误判失败时,需要先区分计算结果错误和浮点精度误差,再根据测试目标设置合适的比较容差。绝对容差适用于固定范围计算,相对容差适用于数值变化较大的场景。调整过程中,需要同时检查数据类型、编译选项和测试期望值,避免通过过宽的容差掩盖软件问题。建立统一的浮点比较规则,可以让单元测试结果更加符合实际软件运行情况。

135 2431 0251