我有一个函数,它接受3个整数,可以是任何东西。
该函数对数字执行一些复杂的比较,并相应地调用/返回。
var A = 1; could be anything between +/- Number.MAX_VALUE
var B = 2;
var C = 3;
result = TheFunction(A,B,C);
我需要测试TheFunction
中逻辑对所有可能值的适用程度。
如何针对所有可能的值测试此函数?
显然我无法插入所有数字和所有数字的所有组合!
我可以插入的最佳数值(以及它们是什么)是什么?并确保我的函数适用于所有可能的值?
答案 0 :(得分:1)
在不了解更多关于功能的情况下,人们只能说一般性。最常见的故障情况是在范围边界附近。这些包括:
添加几个正中值和负值的中间值,并且您有9或10个数字来测试每个参数。有三个参数,即大约1000个案例。
了解函数内部的某些内容可能会让您减少案例,或者可能会建议可能导致问题的其他值或值组合。
P.S。由于四舍五入,Number.MAX_VALUE - 1
可能只评估为Number.MAX_VALUE
。您应该瞄准最小可表示的数字小于Number.MAX_VALUE
。这也表明了一些额外的可能的麻烦点:最大和最小的整数,根据the docs是:
var biggestInt = 9007199254740992;
var smallestInt = -9007199254740992;