白盒测试学习.pptxVIP

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1页/共72页引言静态测试和动态测试 静态测试是指不运行程序进行的测试------只是检查和审阅。白盒测试和黑盒测试 测试用例的设计中,通常会把白盒测试和黑盒测试结合起来使用 第2页/共72页本章主要内容4.1静态测试技术4.2白盒测试技术 第3页/共72页4.1静态测试技术 4.1.1 代码检查4.1.2 静态结构分析4.1.3 代码质量度量 第4页/共72页4.1.1 代码检查代码检查包括代码走查、代码审查等 第5页/共72页代码走查有组织的代码走查在编码阶段去除错误的成本是在软件发布阶段去除错误成本的1/92全部的代码是否都需要走查 最大的问题是劝说开发者要遵循一定的标准 第6页/共72页编码风格与规范好的风格对于好的程序设计具有关键性作用 代码应该是清楚的和简单的-------具有直截了当的逻辑、自然的表达式、通行的语言使用方式 第7页/共72页代码审查 代码审查和代码走查比较代码审查是提高代码质量的良药 消除开发员的心理抵触 代码审查要有目标 代码审查清单第8页/共72页4.1.2静态结构分析 静态结构分析主要是以图形的方式表现程序的内部结构,例如函数调用关系图、函数内部控制流图。其中,函数调用关系图以直观的图形方式描述一个应用程序中各个函数的调用和被调用关系;控制流图显示一个函数的逻辑结构,它由许多节点组成,一个节点代表一条语句或数条语句,连接结点的叫边,边表示节点间的控制流向。 第9页/共72页4.1.3 代码质量度量 ISO/IEC 9126国际标准所定义的软件质量包括六个方面:功能性、可靠性、易用性、效率、可维护性和可移植性。软件的质量是软件属性的各种标准度量的组合。第10页/共72页250*(1+0.015)*((1+0.015)^360-1)/0.0153581322.293419985680302829734315白盒测试 —带上X光眼镜测试4.2白盒测试方法 白盒测试,也称为结构化测试、基于代码的测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。 第11页/共72页4.2白盒测试方法这个流程图,其中包括了一个执行达20次的循环。那么它所包含的不同执行路径数高达520条,若要对它进行穷举测试,覆盖所有的路径。假使测试程序对每一条路径进行测试需要1毫秒,同样假定一天工作24小时,一年工作365 天, 那么要想把如图所示的小程序的所有路径测试完,则需要3170年。第12页/共72页4.2白盒测试方法由于对于不同复杂度的代码逻辑,可以衍生出许多种执行路径,只有选择适当的测试方法,才能帮助我们从代码的迷雾森林中找到正确的方向。第13页/共72页4.2.1 逻辑覆盖法白盒测试中的逻辑覆盖方法有以下6种:语句覆盖判定覆盖条件覆盖判定-条件覆盖条件组合覆盖路径覆盖第14页/共72页例:实现一个简单的数学运算 Dim a,b As Integer Dim c As Double If (a0 And b0) Then c=c/a End if If (a1 or c1) Then c=c+1 End if c=b+c第15页/共72页1.语句覆盖基本思想是:设计若干测试用例,运行被测程序,使程序中每个可执行语句至少执行一次。1第16页/共72页1.语句覆盖……续1只需设计一个测试用例:a=2,b=1,c=6;即达到了语句覆盖。第17页/共72页1.语句覆盖……续2【优点】 :可以很直观地从源代码得到测试用例,无须细分每条判定表达式。【缺点】 :由于这种测试方法仅仅针对程序逻辑中显式存在的语句,但对于隐藏的条件是无法测试的。如在多分支的逻辑运算中无法全面的考虑。语句覆盖是最弱的逻辑覆盖。第18页/共72页2.判定覆盖基本思想是:设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断真假值均曾被满足。1第19页/共72页2.判定覆盖……续1判断Ma=2,b=1 ,c=6可覆盖判断M的Y分支和判断Q的Y分支; a=-2,b=-1 ,c=-3可覆盖判断M的N分支和判断Q的N分支 。 这两组测试用例可覆盖所有判定的真假分支。判断Q第20页/共72页2.判定覆盖……续2判断Ma=1,b=1 ,c=-3 可覆盖判断M的Y分支和判断Q的N分支 ; a=1,b=-2 ,c=3可覆盖判断M的N分支和判断Q的Y分支 ; 同样的这两组测试用例也可覆盖所有判定的真假分支。判断Q第21页/共72页2.判定覆盖……续3【优点】:判定覆盖具有比语句覆盖更强的测试能力。同样判定覆盖也具有和语句覆盖一样的简单性,无须细分每个判定就可以得到测试用例。【缺点】:往往大部分的判定语句是由多个逻辑条件组合而成,若仅仅判断其整个最终结果,而忽略每个条件的取值情况,必然会遗漏部分测试路径。判定覆盖仍是弱的逻辑

文档评论(0)

sheppha + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5134022301000003

1亿VIP精品文档

相关文档