软件测试技术-白盒测试_第1页
软件测试技术-白盒测试_第2页
软件测试技术-白盒测试_第3页
软件测试技术-白盒测试_第4页
软件测试技术-白盒测试_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、广西科技大学计算机学院 软件测试技术实验报告书实验一 白盒测试It学习网 学生姓名:It学习网站长 学 号:201200403062 班 级:卓越计Y121 指导老师:王日凤专 业:计算机学院软件工程提交日期:2014年10月28日白盒测试实验报告一 实验内容1、 系统地学习和理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和方法;2、 举例进行白盒测试,使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖进行测试。3、 通过试验和应用,要逐步提高和运用白盒测试技术解决实际测试问题的能力;4、 熟悉C+编程环境下编写、调试单元代码的基本操作技术和方法;5、 完成实验并认真书

2、写实验报告(要求给出完整的测试信息,如测试程序、测试用例,测试报告等)二 实验原理白盒测试原理:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。它是把测试对象看作装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。其又称为结构测试。 判定M判定N语句覆盖:语句覆盖是设计足够的测试用例使程序中的每一条可执行语句至少执行一次。这题中,两个if语句的判定之后,只要确保使两个判定都为真,那么所有的执行语句就都可以执行了,即可达到语句覆盖的要求。所以设计的测试

3、用例如下: x = 4 , y = 6 , z = 8 。这组测试用例的执行路径是12345678910判定覆盖:判定覆盖要求程序中每个判断的取真分支和取假分支至少经历一次。这题中,有两个判定语句,至少需要设计两组测试用例,才能分别覆盖两个if语句的真分支和假分支。所以设计的测试用例如下:用例1:x = 4 , y = 6 , z = 8其执行路径是12345678910 ; 用例2:x = 3 , y = 5 , z = 8其执行路径是12367910。 条件覆盖:条件覆盖要求每个判断中每个条件的可能取值至少要满足一次。这道题目中的条件有四个,分别如下: x > 3 ; z <

4、10 ; x = 4 ; y > 5 ;设计用例时要使每个条件分别取真和取假。设计的测试用例如下表。判定/条件覆盖要求判断中每个条件的所有可能至少出现一次,并且每个判断本身的可能判定结果也至少出现一次。题目中的条件有四个,分别如下: x > 3 ; z < 10 ; x = 4 ; y > 5 ;条件组合覆盖要求每个判定的所有可能条件取值组合至少执行一次。这道题目中共有四个条件分别如下: x > 3 ; z < 10 ; x = = 4 ; y > 5 ;设定x > 3 为真时,记作T1 ;为假时,即x 3 , 记作F1 ;z < 10为真

5、时,记作T2 ;为假时,即z 10 , 记作F2 ; x = = 4为真时,记作T3 ;为假时,即x 4 , 记作F3 ; y > 5为真时,记作T4 ; 为假时,即y 5 , 记作F4 。 条件组合如下表:路径覆盖:路径覆盖要求覆盖程序中所有可能的路径。这道题中可能的执行路径共有4条,所以需要设计4个测试用例:四 实验结果根据上面设计的测试案例,编写程序后,白盒测试结果如下所示: 1、 语句覆盖x = 4 , y = 6 , z = 82、 判定覆盖用例1:x = 4 , y = 6 , z = 8用例2:x = 3 , y = 5 , z = 8条件覆盖x=3,y=8,z=8x=4,

6、y=5,z=13判定/条件覆盖 x=4,y=8,z=8x=3,y=5,z=13条件组合覆盖x=3,y=5,z=13路径覆盖x = 4 , y = 8 , z = 8x = 4 , y = 3 , z = 13x = 6 , y = 2 , z = 8x = 2 , y = 3 , z = 13五 实验分析对于白盒测试,在设计测试用例时首先对程序进行分析,从程序的内部结构出发设计测试用例,涉及到程序的控制方法、源语句、编码细节、数据库设计等。设计测试用例时应用了白盒测试中的多种测试方法,其中包括:测试覆盖(语句覆盖、分支覆盖、分支条件覆盖等)、基路径测试等方法。白盒测试中,对代码的测试比较透彻,

7、但不容易生成测试用例,而且测试工作量很大。因为白盒测试是基于代码的基础上,所以对变量的定义、数据的分析、精度的度量都有严格的要求。同时,对于白盒测试的案例设计,要注意以下几点(1)保证每个模块中的所有独立路径至少被执行一次;(2)对所有的逻辑值均需要测试真、假两个分支;(3)在上下边界及可操作范围内运行所有循环;(4)检查内部数据结构以确保其有效性。附件:(测试实现源程序)import java.util.Scanner;public class Main public static void main(String args) int x,y,z;new Scanner(System.in)

8、;System.out.println("请输入X的值:");x = scanner.nextInt();System.out.println("请输入Y的值:");y = scanner.nextInt();System.out.println("请输入Z的值:");z = scanner.nextInt();System.out.println("=");System.out.printf("X的值:%d,Y的值:%d,Z的值:%d,DoWork(int x, int y, int z)的值:%dn",x,y,z,DoWork(x,y,z);System.out.println("=");public static int DoWork(int x, int y, int z) int k = 0, j =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论