在浮动范围上执行边界值测试

时间:2014-11-13 17:08:47

标签: floating-point functional-testing black-box-testing

我想对一个程序进行边界值分析,该程序将3个浮点变量作为输入并返回最大值。没有指定范围,因此我将范围强加为no隐含的范围。用于存储浮点变量的字节数,在我的情况下是4个字节。因此,我的浮动范围变为-3.4 + 38到+ 3.4 + 38

问题是:在边界值中你检查这些点:说你的范围是:1< = x< = 10,你需要检查的点是:{1,2,9,10}

在我的浮动示例中,我无法理解哪个值高于-3.4 + 38,哪个值低于+ 3.4e + 38。有人在这里帮忙。我没有得到这个浮动代表。

1 个答案:

答案 0 :(得分:0)

让我们假设您使用C编程。任何其他高级语言都应将概念映射到类似的符号。

float正上方的-3.4e+38f值为nextafterf(-3.4e+38f, 0)float下面的3.4e+38f值为nextafterf(3.4e+38f, 0),如果您发现更清楚,也可以将其计算为与前一个相反的值。

如果您没有-3.399999749e+38函数,也可以分别键入3.399999749e+38nextafterf来获取这些常量。


请注意,3.4e+38f不是最大的float,只是它的粗略近似值(和3.4 + 38,或大约41.4,甚至更低)。