第3章 白盒测试方法
更新时间:2023-08-08 14:29:01 阅读量: 实用文档 文档下载
- 第3章适应几次就好了推荐度:
- 相关推荐
软件测试技术相关基础知识
软件测试技术主编 库波
中国水利水电出版社
软件测试技术相关基础知识
第3章 白盒测试方法 白盒测试方法 1、 代码检查 2、覆盖路径 3、路径测试 白盒测试工具 1、白盒测试工具介绍 2、实用JUnit进行白盒测试
软件测试技术相关基础知识
3.1 白盒测试方法 一般来说,测试任何产品有两种方法:第 一种测试方法就是我们第二章提到的黑盒 测试,第二种测试方法为白盒测试又称为 结构测试。
软件测试技术相关基础知识
3.1.1代码检查 代码检查即静态白盒测试,在不执行程序 的条件下仔细审查代码(可采用互查、走 查等形式),从而找出软件故障的过程。 正式审查过程中有4个关键要素: 1、确定问题。 2、遵守准则。 3、提前准备。 4、编写审查报告。
软件测试技术相关基础知识
3.1.1代码检查 代码检查应注意的哪些可能存在的软件缺陷呢?首先必须 对代码的规范性进行审查,另外还要考虑以下几种类别的 错误。 1、数据的引用错误。 2、数据类型错误。 3、数据声明错误。 4、计算错误。 5、逻辑运算错误。 6、控制流程错误。 7、子程序参数错误。 8、输入/输出错误。 9、其他错误。
软件测试技术相关基础知识
3.1.2覆盖测试 覆盖测试以程序内部的逻辑结构为基础设计测试 用例,要求对被测程序的逻辑结构有清楚的了解。 根据覆盖测试的目标不同,可分为:语句覆盖、 判定覆盖、条件覆盖、判定-条件覆盖、组合覆盖 及路径覆盖。下面以一个小程序为例。 Begin if(x>0)and(y<0) then z=z-(x+y); if(x>2)or(z>0) then z=z+5; 其中and、or是逻辑运算符,3个输入参数是x,y,z。 其对应的程序流程图如图3-1所示(a、b、c、d、 e为控制流上的若干程序点)。
软件测试技术相关基础知识
3.1.2覆盖测试 图3-1 被测程序流程图aN x>0 y<0 and Y
c
b z=z-(x+y)
N
Y
V d
x>2 z>0
or e
z=z+5
软件测试技术相关基础知识
3.1.2覆盖测试 1、语句覆盖 所谓语句覆盖是指设计若干个测试用例, 使程序中的每个可执行语句至少被执行一 次。 语句覆盖在测试程序时,对检查不可执行 语句方面起到一定作用,但被测程序并不 是语句间无序的堆积,语句之间存在着各 种各样的内部联系。所以,语句覆盖并不 能排除被测试程序中存在故障的风险。
软件测试技术相关基础知识
3.1.2覆盖测试 2、判定覆盖 所谓判定覆盖是指设计若干个测试用例, 使得程序中的每个判定至少得到一次真值 和假值,即判断中的真假分支至少均执行 一次。判定覆盖又称为分支覆盖。
软件测试技术相关基础知识
3.1.2覆盖测试 3、条件覆盖 所谓条件覆盖是指设计若干个测试用例,使得程 序中每个判断中每个条件的可能值至少得到一次。 因此,条件覆盖与判定覆盖相比增加了对符合判 定情况的测试以及测试路径。 4、判定/条件覆盖 所谓判定/条件
覆盖是指设计若干个测试用例,使 得判断中每个条件的所有(真或假)取值至少出 现一次,并且每个判断的所有(真或假)判断结 果也至少出现一次。
软件测试技术相关基础知识
3.1.2覆盖测试 5、组合覆盖 所谓组合覆盖是指设计若干个测试用例,使得每个判定条 件的各种情况至少出现一次。 6、路径覆盖 所谓路径覆盖是指设计若干个测试用例覆盖程序中所有的 路径。
软件测试技术相关基础知识
3.1.3路径测试 路径测试就是从一个程序的入口开始,执 行所经历的各个语句的完整过程。 路径测试法是在程序控制流图的基础上, 通过分析控制构造的环路复杂性,导出基 本可执行路径集合,从而设计测试用例的 方法路径测试方法。 (1)画出程序的控制流图。
软件测试技术相关基础知识
3.1.3路径测试
顺序结构
IF选择结构
While循环结构
Until结构
软件测试技术相关基础知识
3.1.3路径测试 (2)程序环形复杂度:McCabe复杂性度 量。 (3)导出基本路径集,确定程序的独立路 径。 (4)根据(3)中的独立路径,设计测试 用例的输入数据和预期输出,确保基本路 径集中的每一条路径的执行。
软件测试技术相关基础知识
3.1.3路径测试 1、程序路径表达 采用弧序列或者节点序列的方式并引入了 两个运算:加和乘。 (1)弧a和弧b相加,表示为a+b,它表明 两条弧是“或”的关系,是并行的路段。 (2)弧a和弧b相乘,表示为ab,它表明路 径是先经历弧a,接着再经历弧b,弧a和弧 b是先后相接的。
软件测试技术相关基础知识
3.1.3路径测试 路径表达式运算满足一下规律。 加法交换律: a+b=b+a 加法结合律: a+(b+c)=(a+b)+c 加法幂运算:a+a=a 乘法结合律:a(bc)=(ab)c 分配律: a(b+c)=ab+ac (a+b)c=ac+bc (a+b)(c+d)=a(c+d)+b(c+d) 值得注意的是路径表达式中乘法不满足交 换律。
软件测试技术相关基础知识
3.1.3路径测试 图3-3(a)和(b)1 1
a2
a
b3
c b e
2
Cc
d4
3
d f
5
4
软件测试技术相关基础知识
3.1.3路径测试 2、程序的环路复杂性 环路复杂性V(G)的计算方式有以下三种。 第一种:V(G)=区域数目。 第二种:V(G)=E-N+2。其中E表示边界 数目,N表示节点数目。 第三种:V(G)=P+1。其中P表示判断节 点数目。
软件测试技术相关基础知识
3.1.3路径测试 3、Z路径覆盖 通过对路径覆盖的分析中可以知道,对于路径较 少且比较简单程序而言,实现路径覆盖是可能实 现的。但是,如果程序中出现多个循环或者判断 的话,所涉及的路径数目也会快速增加,这就可 能造成无法实现路径覆盖。为了解决这个问题, 就必须去除一些次要因素,限制循环次数,从而 减少路径数量。这种简化循环下的路径覆盖称为Z 路径覆盖。 程序中比较典型的循环控制结构即为while和dowhile。两者的区别在于while是先判断,再执行。 do-while是先执行,
再判断。因此,do-while至少 执行一次。
正在阅读:
第3章 白盒测试方法08-08
关于“缠中说禅” 股市技术理论 - 图文01-22
多曲播放音乐发生器的设计11-13
浅析我国城市设计现状及存在问题02-28
人事处下发文件目录03-21
县交通运输局爱国卫生月活动总结02-26
鄂人7号湖北省人事厅湖北省财政厅关于调整机关事业单位工作人员死亡后遗属生活困难补助费标准的通知10-12
《小学生行为习惯养成教育的研究》开题报告03-16
嵌入式系统期末考试题库及答案12-14
现代汉语全程练习(含答案)04-23
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 测试
- 方法
- 白盒
- 青岛市住宅工程设计常见问题防治技术导则
- 多重耐药菌感染的预防与控制-北仑区人民医院
- 2016-2022年中国休闲农业与乡村旅游行业发展现状报告
- 等差数列前N项和教案
- 项目管理检查记录及整改通知单(含字)
- 教学随笔征选反馈及修改建议
- 新派命理:内外环境论
- 2012高中数学 2.4.2第2课时课时同步练习 新人教A版选修2-1
- 对蜡烛及其燃烧的探究
- 苏教版五年级数学下册圆的周长计算练习
- 国内家族企业引入职业经理人的问题研究
- 电容生产工艺卫生
- 对我国国民收入分配格局调整建议
- 最新职业经理人2018年上半年工作总结PPT模板
- 海关报关实务练习题与答案
- 人格障碍与性心理障碍剖析
- 高一数学寒假学习指导(李红老师)
- 《电子政务》复习题及参考答案
- 川崎M系列机器人保养维护手册范本
- 中国传媒网2012年最新平面报价