第四章白盒测试用例设计方法.ppt

  1. 1、本文档共107页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 白盒测试用例设计方法 本章内容 白盒测试 不可能进行彻底的白盒测试 基本路径测试 基本路径 控制流图 基本路径测试 控制流图 控制流图 控制流图 环复杂度 环复杂度 基本路径(选第一条基本路经希望二直结点尽可能的多) 基本路径 三角形问题 控制流图 环复杂度 基本路径和测试用例(1) 基本路径和测试用例(2) 基本路径与环复杂度 81-86-87-88-92-99-100-102 81-86-87-88-92-93-95-97-98-102 81-86-87-88-92-93-95-96-102 81-86-87-88-92-93-94-102 81-86-87-89-90-92-93-94-102 基本路径与环复杂度 结论 如果基本路径必须是可行的,则逻辑关系会压缩基本路径集合数量,因此环复杂度是包含起始点和终止点的基本路径数目的上限 练习 练习 对节点粒度的讨论 对节点粒度的讨论 思考 分支-条件测试 测试思想 根据模块中的逻辑条件设计测试用例,使得被测模块中的每一个复合条件以及构成这个复合条件的每一个简单条件的真假情况至少被执行一次。 简单条件是一个布尔变量或一个可能带有NOT(“┓”)操作符的关系表达式,关系表达式的形式如:E1<关系操作符>E2,其中E1和E2是算术表达式,而<关系操作符>是下列之一:“<”,“≤”,“=”,“≠”(“┓=”),“>”, 或“≥” 复合条件由简单条件、布尔操作符和括弧组成。假定可用于复合条件的布尔算子包括OR“|”,AND“&”和NOT“┓”,不含关系表达式的条件称为布尔表达式。 分支-条件测试 案例 使用分支-条件方法设计下面逻辑条件的测试用例 案例 对分支-条件测试的讨论 案例 结论 推荐 练习 循环测试 测试思想 关注循环体结构的正确性,对循环变量运用类似于边界值测试的方法以验证循环体结构的正确性。 四种不同类型的循环结构 简单循环 嵌套循环 连接循环 非结构循环 循环类型 测试简单循环 测试嵌套循环 测试连接循环 测试非结构循环 其它白盒测试方法 数据流测试 数据流测试 练习 数据流的应用 程序插桩 符号测试 以复合条件为节点P79(方案1) 以简单条件为节点P80(方案2) 使用JUnit 语句覆盖 语句覆盖 分支覆盖 分支覆盖 讨论 条件覆盖 条件覆盖 分支-条件覆盖(1) 分支-条件覆盖(2) 多条件覆盖 多条件覆盖 多条件覆盖 路径覆盖 注意 小结 白盒测试方法基于系统或者组件的内部实现结构和逻辑寻找软件中的缺陷 常用的白盒测试方法包括基本路径测试、分支-条件测试和循环测试 覆盖准则可以作为测试停止或/和选取测试数据的标准 基于控制流的覆盖准则是被工业界广泛采用的覆盖标准之一。按照覆盖率从低到高的顺序,基于控制流的覆盖准则包括语句覆盖、分支覆盖、条件覆盖、分支-条件覆盖和多条件覆盖 Code1 测试用例 A=2,B=0,X=4(t,t,t,t) A=1,B=0,X=3 (f,t,f,t) A=2,B=1,X=1 (t,f,t,f) A=1,B=1,X=1 (f,f,f,f) 1 3 4 2 E 1 3 4 2 E 1 3 4 2 E 1 3 4 2 E 1 3 4 2 E 1 3 4 2 E Code1 说明 路径覆盖是指设计足够多的测试用例,使得程序中所有可能的路径至少被遍历一次。 为了遍历code1中的四条可执行路径,设计4个测试用例:“A=2,B=0,X=3”,(t,t,t,f)“A=1,B=0,X=1”, (f,t,f,f) “A=2,B=1,X=1” (t,f,t,f) “A=3,B=0,X=1”。 (t,t,f,f) 说明 即使对路径数很有限的程序即使作到了路径覆盖,仍然不能保证被测程序的正确性。 例如,对于代码“if(I=0)”,如果将“if(I=0)”错写成了“if(I0)”,假设设计的测试用例中I的值均大于0,这样,虽然满足了路径覆盖,但仍然发现不了这个问题。 Rational Purecoverage Rational Purecoverage 可以帮助检查使用.NET, Java, Visual C/C++和Visual Basic开发的程序并提供代码覆盖信息 如何运行purecoverage 有3种可以运行purecoverage的方法 通过purecoverage自带的用户界面 通过IDE如Microsoft Visual Studio 6, Visual Studio .NET, 和IBM WebSphere Studio 通过命令行 File-Run… 通过自带用户界面 命令行 coverage [PureCoverage options] Purecoverage 选项 通过命令行 命令 运行时信息 通

文档评论(0)

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

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

1亿VIP精品文档

相关文档