资源描述:
《白盒测试实验报告-范例.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.实验报告书实验一白盒测试学生姓名:李庆忠专业:计算机科学与技术学号:1341901317精选word范本!.白盒测试实验报告一实验内容1、系统地学习和理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和方法;2、举例进行白盒测试,使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖进行测试。3、通过试验和应用,要逐步提高和运用白盒测试技术解决实际测试问题的能力;4、熟悉C++编程环境下编写、调试单元代码的基本操作技术和方法;5、完成实验并认真书写实验报告(要求给出完整的测试信息,如测试程序、测试用例,测试报告等)二实验原理白盒测试原理:
2、已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。它是把测试对象看作装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。其又称为结构测试。流程图如下图所示实验代码#include"stdio.h"精选word范本!.intmain(){intx,y,z;scanf("%d%d",&x,&y);if((x>0)&&(y>0)){z=x+y+10;}else{z=x+y-10;}if(z<0){z=0;printf("
3、%d",z);}else{printf("%d",z);}return0;}语句覆盖是指选择足够的测试,使得程序中每个语句至少执行一次。如选择测试x=1,y=1和x=1,y=-1可覆盖所有语句。判定覆盖是指选择足够的测试,使得程序中每一个判定至少获得一次“真”值和“假”值,从而使得程序的每个分支都通过一次(不是所有的逻辑路径)。选择测试x=1,y=1和x=1,y=-1可覆盖所有判定。条件覆盖是指选择语句多数的测试,使得程序判定中的每个条件能获得各种不同的结果。选择测试x=1,y=1和x=-1,y=-1可覆盖所有条件。判定/条件覆盖是指选择足够多的测
4、试,使得程序判定中每个条件取得条件可能的值,并使每个判定取到各种可能的结果(每个分支都通过一次)。即满足条件覆盖,又满足判定覆盖。选择测试x=1,y=1和x=-1,y=-1可覆盖所有判定/条件。条件组合覆盖是指选择足够的测试,使得每个判定中的条件的各种可能组合都至少出现一次(以判定为单位找条件组合)。注:a,条件组合只针对同一个判断语句存在多个条件的情况,让这些条件的取值进行笛卡尔乘积组合。b,不同的判断语句内的条件取值之间无需组合。c,对于但条件的判断语句,只需要满足自己的所有取值即可。选择测试用例x=1,y=1;x=1,y=-1,x=-1,y=1和x=
5、-1,y=-1可覆盖所有条件组合。路径覆盖是分析软件过程流的通用工具,有助分离逻辑路径,进行逻辑覆盖的测试,所用的流程图就是讨论软件结构复杂度时所用的流程图。精选word范本!.三实验方法1、语句覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=1,y=-10FTacdf2、判定覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=1,y=-10FTacdf3、条件覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=-1,y=
6、-10TTacdf4、判定/条件覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=-1,y=-10TTacdf5、条件组合覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=1,y=-10TTacdfx=-1,y=10TTacdfx=-1,y=-10TTacdf6、路径覆盖测试用例输入输出magic判定M的取值判定N的取值覆盖路径x=1,y=112TFabefx=1,y=-10TTacdfx=12,y=-11TFacef本例覆盖路径abdf不存在四实验结果根据上面设计
7、的测试案例,编写程序后,白盒测试结果如下所示:精选word范本!.1、语句覆盖x=1,y=1x=1,y=-12、判定覆盖x=1,y=1精选word范本!.x=1,y=-1条件覆盖x=1,y=1精选word范本!.x=-1,y=-1判定/条件覆盖x=1,y=1精选word范本!.x=-1,y=-1条件组合覆盖x=1,y=1精选word范本!.x=1,y=-1x=-1,y=1精选word范本!.x=-1,y=-1路径覆盖x=1,y=1精选word范本!.x=1,y=-1x=12,y=-1精选word范本!.本例覆盖路径abdf不存在五实验分析对于白盒测试,在设
8、计测试用例时首先对程序进行分析,从程序的内部结构出发设计测试用例,