0
给出一个例子:我如何知道我已经编写了足够多的测试用例?
int sum(int* ary, int n);
我已经写了一些测试用例它
TEST("sum case 1")
{
int a1[] = {1,2,3,4};
ASSERT(sum(a1, 4) == 10);
}
TEST("sum case 2 negative")
{
int a2[] = {-1,-2,-3};
ASSERT(sum(a2, 3) == -6);
}
TEST("sum case 3 0 number")
{
ASSERT(sum(NULL, 0) == 0);
}
TEST("sum case 4 big number")
{
int a4[] = {1243142325,23423525,23525245,124313}
ASSERT(sum(a4) == ....);
}
TEST("sum case 5 mix")
{
int a5[] = {1243142325, -1, 0, -2224313}
ASSERT(sum(a5) == ....);
}
有时,当我写一个函数,我担心我会错过一些可能的情况。然后我停下来,努力想想其他可能的情况,如负整数,空,非常大的数字和其他奇怪的输入。
这花费我的时间,让我觉得有必要写一个功能这么多的情况?我应该写多少个案例足以使测试可靠?或者我应该先写正常情况,如果我有空闲时间,再写另一个案例?