设计测试用例的唯一规则:覆盖所有特征,但并不创建太多的测试用例。 ---Tsuneo Yamaura
1、黑盒测试是对程序接口的测试
2、黑盒测试注重于测试软件的功能性需求
3、黑盒测试不需要了解程序源代码
- #include<iostream>
- using namespace std;
- int main()
- {
- int a;
- int b;
- int c;
- cout<<"请输入两个1~100的整数:"<<endl;
- cin>>a>>b;
- if((a>=1&&a<=100)&&(b>=1&&b<=100))
- {
- c=a*b;
- cout<<"两个数乘积为"<<c<<endl;
- }
- return 0;
- }
而书上的解法则是:
1、两个整数都在1~100之间;(有效等价类)
2、两个整数中至少有一个小于1(无效等价类)
3、两个整数中至少大于100;(无效等价类)
| 用例编号 | 所属等价类 | a | b | 乘积 |
| 1 | 1 | 2 | 3 | 6 |
| 2 | 2 | 1 | -10 | 提示请输入1~100的整数 |
| 3 | 3 | 2 | 200 | 提示请输入1~100的整数 |
比如说设三角形的3边为A、B、C 满足条件A>0 B>0 C>0 , A+B>C , B+C>A , A+C>B
如果是等腰的,还要判断A=B,或者 B=C 或者A=C
如果是等边的,则需要判断是否A=B,且B=C,且A=C


假设有一个需要输入年龄的程序,年龄的取值范围是 1 根据边界值分析法,我们需要选取以下测试用例: 可以知道中间状态有两种。 即已投币,已按钮 原因:c1:投入1元5角硬币 ,c2:投入两元硬币 ,c3:按“可乐”按钮 ,c4:按"雪碧"按钮 c5: 按“红茶”按钮。 结果:a1:退还5角硬币 , a2:送出“可乐”饮料 , a3:送出"雪碧"饮料 , a4: 送出"红茶"饮料 我来解释一波,这个投1元5角的,可以依次按“可乐”,“雪碧”,“红茶”,还有什么都不按的 所以有四个在这个上面为1的。 同理二元的也是一样,有四个。 还有三个是没有投币,就按“可乐”,“雪碧”,“红茶”按钮的,所以一共4+4+3=11个10.3 因果图






决策表
