资源描述:
《软件测试实验(设计测试用例).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验一、设计测试用例目标1、掌握如何编写测试用例2、掌握如何填写测试报告实验内容分析以下程序,掌握在白盒测试中的测试用例的设计方法,包括语句覆盖,分支覆盖,条件覆盖和路径覆盖。阅读下面的一段程序voidTest1(intX,intY,intZ)1{2intk=0,j=0;3if((X>3)&&(Z<10))4{5k=X*Y-1;6j=sqrt(k);7}8if((X==4)
2、
3、(Y>5))9j=X*Y+10;10j=j%3;11}//Test1根据所给定的程序,该程序的可能路径如下:路径1:1→2→3→5→6→8→9→10→11路径2:1→2→3→8→10→11路径3:1→2→3→8→9
4、→10→11路径4:1→2→3→5→6→8→10→11编程实现:(1)设计测试用例,实现分支判定覆盖,使得每个判定中的真假值至少执行一次,并在判定路径中插入一条显示输出语句(printf/cout),输出路径标号。输入格式:输入(X,Y,Z):输出格式:输出(k,j):k=j=路径ID:例如:输入(X,Y,Z):2,5,5↙(回车)输出(k,j):k=0j=0路径ID:路径2:1→2→3→8→10→11(2)设计测试用例,实现路径覆盖,使得每个可能路径至少执行一次。输入格式:输入(X,Y,Z):输出格式:输出(k,j):k=j=路径ID:例如:输入(X,Y,Z):4,5,5↙(回车)输出
5、(k,j):k=19j=0路径ID:路径1:1→2→3→5→6→8→9→10→11(3)设计测试用例,实现语句覆盖,并在每条语句后插入一条显示输出语句(printf/cout),输出语句标号。输入格式:输入(X,Y,Z):输出格式:输出(k,j):k=j=路径ID:例如:输入(X,Y,Z):4,5,5↙(回车)输出(k,j):k=19j=0路径ID:路径1:1→2→3→5→6→8→9→10→11(4)设计测试用例,实现条件覆盖,使得每个判定中的每个条件至少执行一次。输入格式:输入(X,Y,Z):输出格式:输出(k,j):k=j=路径ID:例如:输入(X,Y,Z):2,5,15↙(回车)输
6、出(k,j):k=0j=0路径ID:路径2:1→2→3→8→10→11实验设备装有c语言运行环境的计算机。实验步骤步骤一:根据实验要求,设计如下可执行程序:#include"stdio.h"#include"math.h"voidTest1(intX,intY,intZ){//1intn=0;intcout[11]={0,0,0,0,0,0,0,0,0,0,0};cout[n++]=1;intk=0,j=0;//2cout[n++]=2;cout[n++]=3;if((X>3)&&(Z<10))//3{//4//cout[n++]=4;k=X*Y-1;//5cout[n++]=5;j=s
7、qrt(k);//6cout[n++]=6;//cout[n++]=7;}//7cout[n++]=8;if((X==4)
8、
9、(Y>5)){//8j=X*Y+10;//9cout[n++]=9;}j=j%3;//10cout[n++]=10;printf("输出:k=%dtj=%d",k,j);printf("路径ID:");intm=0;while(cout[m]!=0){printf("%d→",cout[m++]);}printf("11");}//11voidmain(){intx,y,z;printf("输入(x,y,z):");scanf("%d,%d,%d",&x
10、,&y,&z);Test1(x,y,z);}步骤二:编译驱动程序,运行通过;步骤三:根据实验给出路径,设计测试用例;步骤四:运行程序,检验测试用例;步骤五:比较实际输出结果和预期输出结果,得出测试结论;步骤六:根据上述实验及结果,给出测试用例文档说明。实验结果1)对于(1)分支覆盖,共设计两个测试用例如下:分支覆盖测试用例1-1:实际输出结果,如图1-1:图1-1说明:Test1在分支1→2→3→8→10→11运行正确。分支覆盖测试用例1-2:实际输出结果,如图1-2:图1-2说明:Test1在分支1→2→3→5→6→8→9→10→11运行正确。1)对于(2)路径覆盖,共设计四个测试用例
11、如下: 路径覆盖测试用例2-1:实际输出结果,如图2-1:图2-1说明:Test1在给定可能路径1:1→2→3→5→6→8→9→10→11上运行正确。路径覆盖测试用例2-2:实际输出结果,如图2-2:图2-2说明:Test1在给定可能路径2:1→2→3→8→10→11上运行正确。路径覆盖测试用例2-3:实际输出结果,如图2-3:图2-3说明:Test1在给定可能路径3:1→2→3→8→9→10→11上运行正确。路径覆盖测试用例