第3章 白盒测试方法
更新时间:2023-03-29 19:13: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章 白盒测试方法03-29
广西北流市北流镇大燕塘村概况10-23
学习工业4.0感想08-16
预备党员考试复习资料10-31
新视野大学英语第三版读写教程第二册Unit7课文语法讲解08-21
2019年中考物理试题专题训练 - 蒸发专题(word版含解析)03-14
辽宁省大连市真金教育信息咨询有限公司高三数学 第07章 立体几何03-29
外国世界遗产之美08-15
2015国网陕西省电力公司第一批高校毕业生录用人选名单06-12
九年级上学期期末数学测试题(三)10-05
- 资产评估网上考查课作业题
- 【完整版】XX地区新建黄酒厂建设工程项目可行性研究报告
- 教师资格考试中学教育学选择题复习资料
- 通史复习:中国古代史复习1
- 目录-2018-2023年中国商铺地产行业发展动态分析及市场盈利预测报
- windows 7如何设置始终以管理员身份运行 特定与全部程序
- 母亲节活动策划方案大全精选(完整版)
- 申报“大学生服务之星”事迹材料
- 全员智慧中台知识赋能行动题库大全
- 5.1资源的跨区域调配——以我国西气东输为例
- 清单模式下工程项目投标技巧应用工程造价毕业论文
- 城市水污染损失的经济计量模型
- 新人教版小学四年级数学上册单元试题 全册
- 改造工程安全验收评价报告
- 上海活动策划公关公司、发布会策划方案、产品策划、发布会执行、
- 2013考研数学一复习计划及进度表
- PLC控制三相异步电动机(DOC)
- 2010年江苏省公务员A类真题及解析(公基、行测、申论三合一)
- 冒险岛 人物技能加点
- 食品安全基础知识
- 测试
- 方法
- 白盒
- 对我国国民收入分配格局调整建议
- 多重耐药菌感染的预防与控制-北仑区人民医院
- 人教七年级英语下12单元Self check
- 关于开展“我是党员,向我看齐”活动
- 辽宁省大连市真金教育信息咨询有限公司高三数学 第07章 立体几何
- 亚当斯密与李嘉图的价值理论的联系
- Automatic belief revision in sneps
- 人格障碍与性心理障碍剖析
- 【最新文档】机械设计制造及其自动化专业大学排名-word范文模板
- 中国传媒网2012年最新平面报价
- 2013年文献检索上机检实习题
- 国内家族企业引入职业经理人的问题研究
- 申论写作框架+经典申论语言
- 最新职业经理人2018年上半年工作总结PPT模板
- 《会计师事务所服务收费管理办法》陕价行发【2013】39号(西安佳
- 不安全行为管理规定
- 信息技术在军事领域的作用
- 35种足球传球练习方法
- 《爱丽丝:疯狂回归》真相探索攻略第三回(图文)
- 个人修炼计划参考样