软件工程实验6白盒测试实验.docx
软件工程安弟6: 6食部)弑安弟一、实验目的1、理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和方法;2、掌握白盒测试中主要逻辑覆盖标准测试用例的设计方法;3、通过试验逐步提高和运用白盒测试技术解决实际测试问题的能力;二、实验内容1、系统地学习和理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和 方法;2、理解白盒测试中各种逻辑覆盖测试的定义。3、复习C+、java等编程环境下编写、调试单元代码的基本操作技术和方法;4、能对给定模块相应的算法设计出语句覆盖、判定覆盖、条件覆盖、判定/条件 覆盖、条件组合覆盖、路径覆盖对应的测试用例。5、完成实验并认真书写实验报告(要求给出完整的测试信息,如测试程序、测 试用例,测试报告等)j=word2010> C/C+/java/VB/PHP/JSP/ASP/ASP.net四、实验要求1、下列程序流程图,设计出语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、 条件组合覆盖、路径覆盖对应的测试用例,上机编写程序代码执行,运行结果与 预期结果对比。注:红色的字母为路径编号。2、实验时间:2课时五、实验步骤1、测试用例设计(1)语句覆盖测试用例输 入预期输出 magic判定M的 取值判定N的 取值覆盖语句覆盖路径X=2, y=51710magic:=x+y+1012457X=-l, y=-2001magic:=x+y-10Magic: =0123567(2)判定覆盖测试用例输入预期输出magic判定M的取值判定N的取值覆盖路径X=-l, y=-l001123567X=2, y=5171012457(3)条件覆盖测试用例输 入预期输出 magic判定M的取 值判定N的取 值覆盖的条件覆盖路径X=-l, y=-l001X<0,y<0Magic<0123567X=2, y=51710x>0,y>0magic>012457(4)判定/条件覆盖测试用例输 入预期输出 magic判定M的取 值判定N的取 值覆盖条件覆盖路径X=-l, y=-l001X<0,y<0Magic<0123567X=2, y=51710x>0,y>0magioO12457X=ll, y=-l000X>0,y<0 magioO12357X=l, y=l出错11x>0,y>0magic<0124567(5)条件组合覆盖测试用例输 入预期输出 magic判定M的取 值判定N的取 值覆盖条件覆盖路径X=2, y=51710x>0, y>0 magioO12457X=-l, y=-l001X<0, y<0 magic<0123567X=l, y=-l001x>0, y<0 magic<0123567X=-l, y=l001X<0, y>0 magic<0123567(6)路径覆盖测试用例输入预期输出magic判定M的取值判定N的取值覆盖路径X=ll, y=-l00012357X=l, y=l出错11124567X=2, y=5171012457X=-l, y=-l0011235672、程序语言及开发环境选择程序语言:C开发环境:DEV-C+3、程序代码#include<stdio.h>int main()(int x,y;int magic;printf("please enter two integer");scanf("%d%d",&x/&y);(if(x>0&&y>0)magic=x+y+10;elsemagic=x+y-10;if(magic<0)magic=0;printf(,l%d,magic);)六、实验结果根据上面设计的测试案例,编写程序后,白盒测试结果如下所示,运行结 果:(1)语句覆盖运行结果界面:E3 C:Users86182Desktop软件工程'软件工程实验61 .exeplease enter two integer 2 5 17process exited after 5. 523 seconds with return value 0 诘按任意键继续. .E C:Users86182Desktop软件工程软件工程实验61 .exeplease enter two integer -1 -2 0Process exited after 4. 18 seconds with return value 0 请按任意键继续. .结果与预期是否一致:测试用例输入预期输出magic实际输出magic测试结果是否与预期一致X=2, y=51717是X=-l, y=-200是(2)判定覆盖 运行结果界面: 1C:Users86182Desktop软件工程软件工程实验 61 .exeplease enter two integer -1-10Process exited after 4. 54 seconds with return value 0 请按任意键继续. .QI C:Users86182Desktop软件工程'软件工程实验61 .exeplease enter two integer 2517Process exited after 5. 523 seconds with return value 0 请按任意键继续.结果与预期是否一致:测试用例输入预期输出magic实际输出magic测试结果是否与预期一致X=-l, y=-l00是X=2, y=51717是(3)条件覆盖运行结果界面:121 C:Users86182Desktop软件工程软件工程实验 61 .exeplease enter two integer -1-10Process exited after 4. 54 seconds with return value 0 请按任意键继续. . J C:Users86182口6$代(软件工程'软件工程实验61 .exeplease enter two integer 2517Process exited after 5. 523 seconds with return value 0 请按任意键继续.结果与预期是否一致:测试用例输入预期输出magic实际输出magic测试结果是否与预期一致X=-l, y=-l00是X=2, y=51717是(4)判定/条件覆盖 运行结果界面:E C:Users86182Desktop软件工程'软件工程实验61 .exeplease enter two integer -1-10Process exited after 4. 54 seconds with return value 0 请按任意键继续. . . 1C:Users86182Desktop软件工程软件工程实验61.exeplease enter two integer 2 5 17Process exited after 5. 523 seconds with return value 0 请按任意键继续. 21 C:Users86182Desktop 软件工程软件工程实验 61 .exeplease enter two integer 11 TProcess exited after 6.164 seconds with return value 0 请按任意键继续Ui C:Users86182Desktop软件工程软件工程实验61 .exeplease enter two integer 1112Process exited after 3.632 seconds with return value 0 请按任意键继续. .结果与预期是否一致:测试用例输入预期输出magic实际输出magic测试结果是否与预期一致X=-l, y=-l00是X=2, y=51717是X=ll, y=-l00是X=l, y=l出错12否(5)条件组合覆盖 运行结果界面:S3 C:Users86182Desktop软件工程、软件工程实验61 .exeplease enter two integer 2 5 17Process exited after 5. 523 seconds with return value 0 请按任意键继续. 1C:Users86182Desktop软件工程软件工程实验 61 .exeplease enter two integer -1-10Process exited after 4. 54 seconds with return value 0 请按任意键继续. .S3 C:Users86182Desktop软件工程软件工程实验61 .exeplease enter two integer 1-1Process exited after 4.584 seconds with return value 0 请按任意键继续. . JiC:Users86182Desktop软件工程、软件工程实验61 .exeplease enter two integer -110Process exited after 4. 104 seconds with return value 0 倩按任意键继续. .结果与预期是否一致:测试用例输入预期输出magic实际输出magic测试结果是否与预期一致X=2, y=51717是X=-l, y=-l00是X=l, y=-l00是X=-l, y=l00是(6)路径覆盖 运行结果界面:21 C:Users86182Desktop 软件工程软件工程实验 61 .exeplease enter two integer 11-10Process exited after 6.164 seconds with return value 0 请按任意键继续