Software Testing-白盒测试 Software Testing Techniques_2013 《软件测试》课件.ppt

Software Testing-白盒测试 Software Testing Techniques_2013 《软件测试》课件.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Software Testing-白盒测试 Software Testing Techniques_2013 《软件测试》课件

Chapter 1 Players in the Systems Game 概述(1) 称为结构性测试、逻辑驱动测试,基于被测程序的源代码,而不是基于定义.由于这种绝对化的基础,白盒测试支持严格定义、数据分析和精确度量. 白盒测试方法 控制流/路径测试 数据流测试 其他方法:程序插装、域测试法、符号测试、Z路径覆盖法、程序变异 概述(2) 软件人员使用白盒测试方法,主要想对程序模块进行如下的检查: 对程序模块的所有独立的执行路径至少测试一次; 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次; 在循环的边界和运行界限内执行循环体; 测试内部数据结构的有效性。 程序图 给定一个采用命令式程序设计语言编写的程序,其程序图是一种有向图,其中: 节点是语句片段(要么是整个语句,要么是语句的一部分); 边表示控制流(从节点i到节点j有一条边,当且仅当对应节点j的语句或语句的一部分,可以立即在节点i对应的语句或语句的一部分之后执行)。 三角形程序的源代码和程序图 DD-路径 结构性测试最著名的形式以决策到决策DD路径的结构为基础,指语句的一种序列. DD-路径是程序图中的一条链,使得: 情况1:由一个节点组成,内度=0 情况2:由一个节点组成,外度=0 情况3:由一个节点组成,内度≥2或外度≥2 情况4:由一个节点组成,内度=1并且外度=1 情况5:长度≥1的最大链 DD-路径图 给定采用命令式语言编写的一段程序,其DD-路径图是有向图. 其中, 节点表示其程序图的DD-路径 边表示连续DD-路径之间的控制流. 三角形程序的DD-路径图 测试覆盖指标举例 If ((A1) and (B=0)) then X=X/A If ((A=2) or (X1)) then X=X+1 测试覆盖指标(1) 语句覆盖:选择足够的测试用例,使得程序中每个可执行语句至少执行一次. 测试覆盖指标(2) (判定)分支覆盖:选择足够的测试用例,使得程序中每个判定至少都获得一次“真”值和“假”值. 测试覆盖指标(3) 分支条件覆盖:选择足够的测试用例,使得程序中每个判定中每个条件的可能值至少满足一次. 测试覆盖指标(4) 条件判定覆盖:选择足够的测试用例,使得程序中每个判定中的每个条件的所有可能(真/假)至少出现一次并且每个判定本身的结果(真/假)也至少出现一次. 测试覆盖指标(5) 分支条件组合覆盖:选择足够的测试用例,使得程序中每个判定中条件的各种可能组合都至少出现一次,显然满足条件组合覆盖的测试用例一定满足“(判定)分支覆盖”、“分支条件覆盖”和“条件判定覆盖”. 测试覆盖指标(6) 路径覆盖:设计足够的测试用例要求覆盖程序中所有可能的路径. 基路径测试(1) 特定的集合都可以有一个基,基可以采用向量空间的结构来定义,所有向量空间都有一个基,向量空间的基是相互独立的一个向量,基“覆盖”整个向量空间,使得该空间中的任何其他向量都可以用基向量表示。 若把程序看作是一种向量空间,则这种空间的基就是要测试的非常有意义的元素集合。如果基没有问题,则可以希望能够用基表述的一切都是没有问题的。 基路径测试(2) 强连接图的圈数量等于图中线性独立环路的数量。 通过从汇结点到源结点添加一条边,可以创建强连接图。 圈数量V(G)=e-n+2p 5个独立路径为: P1:A,B,C,G P2:A,B,C,B,C,G P3:A,B,E,F,G P4:A,D,E,F,G P5:A,D,F,G 基路径的表示 路径的弧序列表示或者节点序列表示 路径表达式 运算对象是路径图中的弧 运算操作是标量乘法、加法 满足加法交换律、加法结合律、加法幂等律、乘法结合律以及分配律 不满足乘法交换律 基路径确定方法 首先选择一个基线路径,应该对应某个正常案例程序执行(建议选择有尽可能多的判断节点的路径) 然后重新回溯基线路径,依次“翻转”每个判断点,即当节点的外度≥2时,必须取不同的边。 三角形程序的基路径1 基路径确定问题 代码级的依赖关系,这种依赖关系与独立基路径的隐含假设绝对冲突。 基路径确定算法成功地标识在拓扑结构上独立的基路径,但如果存在矛盾的语义依赖关系,则拓扑结构上可行的路径在逻辑上有可能不可行。 解决方案是(1)永远翻转语义可行路径中的判断结果;(2)找出逻辑依赖型的原因。 三角形问题中的逻辑依赖规则: 若经过节点C,则必须经过节点H; 若经过节点D,则必须经过节点G。 三角形程序的基路径2 指导方针与观察 功能性测试的漏洞和冗余都存在,而且同时不能被发现,因为功能性测试离代码过远. 路径测试将代码采用有向图表示和程序路径公式化,掩盖了代码中的重要信息,即可行路径和不可行路径的区别. 提供了用做功能性测试交叉检查的一组指标

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档