用白盒测试三角形问题,得出语句覆盖测试用例(输入、期望输出、测试结果)
时间: 2023-12-24 19:04:00 浏览: 107
三角形程序白盒测试.docx
基于语句覆盖的白盒测试要求测试用例至少执行一次每个语句。以下是一个求解三角形类型的示例程序:
```
1 public static String getTriangleType(int a, int b, int c) {
2 if (a <= 0 || b <= 0 || c <= 0) {
3 return "非法三角形";
4 }
5
6 if (a + b <= c || a + c <= b || b + c <= a) {
7 return "非法三角形";
8 }
9
10 if (a == b && b == c) {
11 return "等边三角形";
12 } else if (a == b || a == c || b == c) {
13 return "等腰三角形";
14 } else {
15 return "一般三角形";
16 }
17 }
```
根据上述程序,可以构造出以下语句覆盖的测试用例:
1. 输入:`a=3, b=4, c=5`,期望输出:`一般三角形`,测试结果:`一般三角形`。
2. 输入:`a=0, b=1, c=1`,期望输出:`非法三角形`,测试结果:`非法三角形`。
3. 输入:`a=1, b=2, c=3`,期望输出:`非法三角形`,测试结果:`非法三角形`。
4. 输入:`a=2, b=2, c=2`,期望输出:`等边三角形`,测试结果:`等边三角形`。
5. 输入:`a=2, b=2, c=3`,期望输出:`等腰三角形`,测试结果:`等腰三角形`。
6. 输入:`a=3, b=4, c=6`,期望输出:`一般三角形`,测试结果:`一般三角形`。
在上述测试用例中,每个语句都至少执行了一次,因此这些测试用例可以实现语句覆盖。当然,还可以根据其他白盒测试覆盖方法,如判定覆盖、条件覆盖、路径覆盖等,构造出更加严谨的测试用例。
阅读全文