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) == ....);
}
有時,當我寫一個函數,我擔心我會錯過一些可能的情況。然後我停下來,努力想想其他可能的情況,如負整數,空,非常大的數字和其他奇怪的輸入。
這花費我的時間,讓我覺得有必要寫一個功能這麼多的情況?我應該寫多少個案例足以使測試可靠?或者我應該先寫正常情況,如果我有空閒時間,再寫另一個案例?