白盒测试实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件测试实验报告
----白盒测试一.实验内容
使用黑盒测试技术设计一个自动售货机上的系统。
自定义自动售货机只卖三种饮料:可口可乐,雪碧,百事可乐,单价分别为2.5元,2.5两元,2元。假设输入饮料类别及需要的数量,如果输入的金额数足够,直接送出饮料,退回零钱,如果输入的金额不够,有提示可以继续输入钱币。
自动售货机运行界面如下:
二程序模块
三、控制流图
四、计算圈图复杂度
V=3*4+1=13
五、基本路径:
1-1-4 1-2-4 1-3-4 1-4-4 2-1-4 2-2-4 2-3-4 2-4-4 3-1-4 3-2-4 3-3-4 3-4-4 4-4
六、设计测试用例
编号输入数据覆盖路径
1 1 1 4 1- 1-4
2 1 2 4 1-2-4
3 1 3
4 1-3-4
4 1 4 4 1-4-4
5 2 1 4 2-1-4
6 2 2 4 2-2-4
7 2 3 4 2-3-4
8 2 4 4 2-4-4
9 3 4 4 3-1-4
10 3 2 4 3-2-4
11 3 3 4 3-3-4
12 3 4 4 3-4-4
13 4 4 4-4
七、执行测试用例
因篇幅有限,仅列出部分测试用例
八、存在问题
以上程序存在以下问题:
1 设计上不合理,投币时不可能一下就投出2.5元
2 第二个过程时,应在设计一个推出界面,例如顾客选择1以后,又决定不买时,将会无法退出
附录代码:#include
void main(){
int n,m,i;
for(i=0;i<100;i++){
cout<<"欢迎使用自动售货机系统!\n" ;
cout<<"请选择商品\n";
cout<< "1 可口可乐2.5元\n";
cout<< "2 雪碧2.5元\n";
cout<< "3 百事可乐2元\n";
cout<< " 4 结束购物\n";
cin>>n;
if(n==1){
cout<<"你选择的是可口可乐\n";
cout<<"请选择投币种类\n";
cout<< "1 2.5元\n";
cout<< "2 3元\n";
cout<< "3 5元\n";
cout<< "4 1元\n";
cin>>m;
if(m==1){
cout<<"付款金额正好,请取走商品\n";
}
else if(m==2)
{
cout<<"找您0.5元\n";
}
else if(m==3){ cout<<"找您2.5元\n";}
else {cout<<”钱不够!”;}
}
if(n==2){
cout<<"你选择的是雪碧\n";
cout<<"请选择投币种类\n";
cout<< "1 2.5元\n";
cout<< "2 3元\n";
cout<< "3 5元\n";
cout<< "4 1元\n";
cin>>m;
if(m==1){
cout<<"付款金额正好,请取走商品\n";
}
else if(m==2)
{
cout<<"找您0.5元\n";
}
else if(m==3){ cout<<"找您2.5元\n";}
else {cout<<”钱不够!”;}
}
if(n==3){
"你选择的是百事可乐\n";
cout<<"请选择投币种类\n";
cout<< "1 2.5元\n";
cout<< "2 3元\n";
cout<< "3 5元\n";
cout<< "4 1元\n";
cin>>m;
if(m==1){
cout<<"找您0.5元\\n";
}
else if(m==2)
{
cout<<"找您1元\n";
}
else if(m==3){ cout<<"找您2元\n";}
else {cout<<”钱不够!”;}
}
if(n==4)
cout<<"谢谢惠顾!"< }