白盒测试

预习报告
一、实验目的
1.掌握覆盖率的计算方法
2.掌握语句覆盖,分支覆盖(判定覆盖),条件覆盖,条件分支组合覆盖,组合覆盖的含义及区别
3.掌握使用各种覆盖法,设计测试用例的方法

二、实验原理
1 测试覆盖率
测试覆盖率是指用于确定测试所执行到的覆盖项的百分比。其中的覆盖项是指作为测试基础的一个入口或属 性,比如语句、分支、条件等。 测试覆盖率可以表示出测试的充分性,在测试分析报告中可以作为量化指标的依据,测试覆盖率越高效果越 好。但覆盖率不是目标,只是一种手段。测试覆盖率包括功能点覆盖率和结构覆盖率。 功能点覆盖率大致用于表示软件已经实现的功能与软件需要实现的功能之间的比例关系。 结构覆盖率包括语句覆盖率、分支覆盖率、循环覆盖率、路径覆盖率等。
(1)语句覆盖率
语句覆盖率=至少被执行一次的语句数量/可执行的语句总数100%
(2)判定覆盖率
判定覆盖率=判定结果被评价的次数/判定结果的总数
100%
(3)条件覆盖率
条件覆盖率=条件操作数值至少被评价一次的数量/条件操作数值的总数*100%
(4)判定/条件覆盖率
判定/条件覆盖率=条件操作数值或判定结果值至少被评价一次的数量/(条件操作数值总数+判定结果总数) 100%
(5)条件组合覆盖率
条件组合覆盖率=条件操作数值至少被评价一次的数量/条件操作数值的所有组合总数
100%

2 逻辑覆盖
根据覆盖目标的不同和覆盖源程序语句的详尽程度,逻辑覆盖又可分为语句覆盖、判定覆盖、条件覆盖、条件 判定组合覆盖、多条件覆盖(条件组合覆盖)、组合覆盖。
(1)语句覆盖
语句覆盖是选择足够多的测试数据,使得程序中的每个可执行语句至少执行一次。语句覆盖的缺点是对程序执 行逻辑的覆盖率很低。 例如:图3-1为一个程序流程图,它的源程序是:
PROCEDURE M(VAR A,B,X:REAL);
BEGIN IF(A>1) AND (B=0) THEN X:=X/A;
IF(A=2) OR (X>1) THEN X:=X+1;
END

为使程序中每个语句至少执行一次,只需设计一个能通过路径ace的例子就可以了,例如选择输入数据为: A=2,B=0,X=3,就可达到“语句覆盖”标准。
(2)判定覆盖
判定覆盖是通过设计足够多的测试用例,使得程序中的每一个判定至少获得一次真值和假值,或者使得程序中 的每一个取真的分支或取假的分支至少经历一次,也称为分支覆盖。判定覆盖的缺点是主要对整个表达式的最终取 值进行度量,忽略了表达式的内部取值。对图3-1的程序,如果设计两个用例,使它们能通过路径ace和abd,或者 通过路径acd和abe,就可达到“判定覆盖”标准,为此,可以选择输入数据为:
① A=3,B=0,X=1(沿路径acd执行);
② A=2,B=1,X=3(沿路径abe执行)。
(3)条件覆盖
条件覆盖是通过设计足够多的测试用例,使得程序中每个判定包含的每个条件的可能取值(真/假)都至少满 足一次。条件覆盖的缺点是不能够满足判定覆盖。 图3-1的程序有四个条件:A>1、B=0、A=2、X>1
为了达到“条件覆盖”标准,需要执行足够的测试用例使得在a点有:A>1、A≤1、B=0、B≠0等各种结果出 现,以及在b点有:A=2、A≠2、X>1、X≤1等各种结果出现。现在只需设计以下两个测试用例就可满足这一标准:
① A=2,B=0,X=4(沿路径ace执行);
② A=1,B=1,X=1(沿路径abd执行)。
(4)条件判定组合覆盖
条件判定组合覆盖(判定/条件覆盖)是通过设计足够多的测试用例,使得程序中每个判定包含的每个条件的 所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。条件判定组合覆盖的测试用例一定同时满足判定覆盖和条件覆盖。条件判定组合覆盖的缺点是没有考虑单个判定对整体结果的影响,无 法发现逻辑错误。对图3-1的程序,可以设计两个测试用例满足条件判定组合覆盖:
① A=2,B=0,X=4(沿路径ace执行);
② A=1,B=1,X=1 (沿路径abd执行)。
(5)条件组合覆盖
条件组合覆盖也称多条件覆盖,是通过设计足够多的测试用例,使得每个判定中条件的各种可能组合都至少出 现一次(以数轴形式划分区域,提取交集,建立最少的测试用例)。条件组合覆盖的缺点是判定语句较多时,条件 组合值比较多。
再看图3-1的程序,我们需要选择适当的例子,使得下面8种条件组合都能够出现:
① A>1,B=0
② A>1,B≠0
③ A≤1,B=0
④ A≤1,B≠0
⑤ A=2,X>1
⑥ A=2,X≤1
⑦ A≠2,X>1
⑧ A≠2,X≤1
必须注意到,⑤、⑥、⑦、⑧四种情况是第二个IF语句的条件组合,而X的值在该语句之前是要经过计算的, 所以还必须根据程序的逻辑推算出在程序的入口点X的输入值应是什么。
下面四个例子可以使上述8种条件组合至少出现一次:
A=2,B=0,X=4使①、⑤两种情况出现;
A=2,B=1,X=1使②、⑥两种情况出现;
A=1,B=0,X=2使③、⑦两种情况出现;
A=1,B=1,X=1使④、⑧两种情况出现。
(6)组合覆盖
组合覆盖是通过执行足够多的测试用例,使得程序中每个判定的所有可能的条件取值组合都至少出现一次。满 足组合覆盖的测试用例一定满足判定覆盖、条件覆盖和条件判定组合覆盖。

实验报告

一、实验题目
白盒测试—逻辑覆盖—三角形问题

二、实验内容及结果













白盒测试:三角形问题实验报告相关推荐

  1. 软件质量保证与测试 实验一:白盒测试用例设计 实验报告,白盒测试和黑盒测试实验报告...

    白盒测试和黑盒测试实验报告 (24页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 软件质量保证与测试实验指导计算机工程学院测试环境配置1 ...

  2. 软件质量保证与测试 实验一:白盒测试用例设计 实验报告,白盒测试和黑盒测试实验报告.doc...

    文档介绍: 白盒测试和黑盒测试实验报告软件质量保证与测试实验指导计算机工程学院测试环境配置settingJunit(1)startEclipseSelectwindows-preferences-ja ...

  3. python的实验报告大一心理_python的期末实验报告

    青岛工学院 实验报告 <Python 语言基础>实验报告 实验室: 实验题目 年... python大作业实验报告.pptx_计算机软件及应用_IT/计算机_专业资料.... 温州大学瓯江 ...

  4. 软件测试实验4白盒测试,软件测试实验报告白盒测试

    <软件测试实验报告白盒测试>由会员分享,可在线阅读,更多相关<软件测试实验报告白盒测试(8页珍藏版)>请在人人文库网上搜索. 1.软件测试与质量课程实验报告实验3:白盒测试姓名 ...

  5. 工资软件测试白盒测试报告,软件测试白盒测试实验报告

    <软件测试白盒测试实验报告>由会员分享,可在线阅读,更多相关<软件测试白盒测试实验报告(7页珍藏版)>请在人人文库网上搜索. 1.西南科技大学计算机学院实验报告实 验 名 称 ...

  6. 三角形问题测试实验报告

    软件测试实验报告 课程名称 软件质量保证与测试 班级 实验日期 姓名 学号 实验地点 实验名称 三角形问题 实验目的与要求 1.掌握软件测试技术中白盒测试方法: 2.掌握如何进行单元测试 实验环境 I ...

  7. 软件质量保证与测试 实验一:白盒测试用例设计 实验报告,软件质量保证与测试实验报告...

    <软件质量保证与测试>实验报告 实验一 白盒测试技术 (实验日期:12(2)11(3)班9月22日-9月29日) (实验日期:12(1)班9月23日-9月30日) 一.实验目的 1. 熟练 ...

  8. c语言程序三角形实验报告,C语言程序设计实验报告五

    C程序设计实验报告四 姓名:赖玮 实验地点:家 实验时间:2020.04.23 一.实验目的与要求 1.熟练地掌握函数的定义方法和调用规则. 2.掌握在C语言程序中主调函数和被调用函数之间进行数据传递 ...

  9. c语言程序三角形实验报告,C语言程序设计实验报告(6)

    C程序设计实验报告六 实验项目:7.3.1-1两两比较排序:7.3.1-2找最小排序:7.3.2打印杨辉三角形 姓名:蔡鹏 实验地点:家中 实验时间:2020.5.7 一.实验目的与要求: 1.巩固学 ...

  10. 软件测试'python'版白盒测试三角形问题

    1.实验内容 使用python实现如下功能的程序: 输入三条边 a,b,c,满足0<=a<=200,0<=b<=200,0<=c<=200,判断是否能构成三角形, ...

最新文章

  1. Python自然语言处理实战
  2. MaxScale Binlog Server
  3. Firebug Lite——在没有调试工具的浏览器(如IE6-7)中调试
  4. XAML中格式化日期
  5. Mysql身份认证漏洞及利用(CVE-2012-2122)
  6. python去除图像光照不均匀_低光照环境下图像增强相关
  7. 悟透delphi 第五章 包
  8. CMakeFiles/species.inc.dir/build.make:57: recipe for target 'CMakeFiles/species.inc' failed
  9. java 排序算法总结,Java排序算法总结之归并排序
  10. 程序运行中(BSS段、数据段、代码段、堆栈)
  11. 关于asp.net导出Excel [zz]
  12. Linux部分命令使用说明
  13. 将Excel表格数据导入SQL表格
  14. wifi分析仪怎么看哪个信道好_怎么查看周围的WiFi网络使用了哪些信道
  15. java编写蠕虫病毒_教大家编写蠕虫病毒
  16. GPRS DTU是什么?其工作原理是什么? (转自aerkate)
  17. java date 减去5分钟_java里让一个date每次加5分钟等于另外一个指定的date
  18. Ubuntu下安装GParted并分区,进行虚拟机内存扩展
  19. 编程猫的python咋样_编程猫的课程怎么样?
  20. 转载:软件工程师的视角看网络(网络那点事)

热门文章

  1. DS18B20 数字温度传感器实验
  2. 重装服务器系统步骤,服务器系统重装步骤
  3. window的mysql开机自动启动
  4. 三、段地址与偏移地址
  5. 乐玩插件和大漠插件哪个好_2019年都用过哪些Chrome插件?分享30个好用的插件,提升上网体验...
  6. 芯鼎盛LED恒流驱动芯片TX6128设计的DC-DC开关电源降压恒流DEMO说明
  7. vue子父组件之间的传值
  8. 没有oracle 连接kettle,Kettle 连接 oracle
  9. linux wps 公式编辑器,WPS 2012数学公式编辑器的使用方法(详细图解)
  10. WPS word解决公式上浮的问题