51Testing软件测试论坛

标题: 关于浮点数比较的测试 [打印本页]

作者: aux0    时间: 2010-10-1 12:41
标题: 关于浮点数比较的测试
最近遇到一个比较头痛的问题:不该修改的数据却被系统修改了,且是偶发。后来分析发现是由于浮点数比较存在的问题。
  例如: float A,B;
if (A!=B)
  {
   修改某数据   //需求要求
  }

而实际上,当A与B对于用户来说是相等的,如都为5.12,由于精度问题(浮点数在计算机当中的二进制表达方式就决定了大多数浮点数都是无法精确的表达的),系统认为它们是不相等的,使得不该修改的数据被修改了。

发现此问题后,由于整个软件系统中还存在数据处理的地方,作为测试人员应如何有效地全面地揪出同类问题呢?+

欢迎讨论。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2