软件测试-测试用例及黑盒测试方法.ppt

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

软件测试技术 黑盒测试方法及测试用例 Numen Hao qiang.hao@ 内容 软件测试基本概念 黑盒测试方法 等价类划分法 边界值分析法 错误推测法 因果图法 判定表驱动法 功能图法 测试用例 什么是软件测试 软件测试的经典定义:在规定条件下对软件进行操作,以发现错误,对软件质量进行评估的过程。 但事实上软件是由文档、数据以及程序组成的,软件测试不仅仅只包括对程序本身的测试,而应该包括对软件形成过程中的文档、数据以及程序的测试。有资料表明60%以上的软件错误并不是程序错误,而是分析和设计错误。 软件测试的目的 早期的软件测试定义指出软件测试的目的是寻找bug,并且尽最大可能找出最多的bug。 测试是一个为了寻找错误而运行程序的过程。 一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。 一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。 软件测试的目的是想以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷来提高软件质量,回避软件发布后由于潜在的bug造成的隐患所带来的商业风险。 软件测试是对软件质量的度量和评估,以验证软件的质量满足用户的需求的程度,并且通过最终的验收测试,可以证明软件满足了用户的需求,树立用户使用软件的信心。 软件测试的内容 软件测试主要工作内容是验证(verification)和确认( validation ) 验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing) 1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程; 2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程; 3.评审、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。 确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right) 1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性; 2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。 软件测试的基本原则 尽早地并不断地进行软件测试 程序员或程序设计机构应避免测试自己设计的程序 测试用例中不仅要有输入数据,还要有与之对应的预期结果 测试用例的设计不仅要有合法的输入数据,还要有非法的输入数据 在对程序修改之后要进行回归测试 程序中尚未发现的错误的数量通常与该程序中已发现的错误的数量成正比 妥善保留测试计划、全部测试用例、出错统计和最终分析报告,并把它们作为软件的组成部分之一,为维护提供方便 应当对每一个测试结果做全面检查 严格执行测试计划,排除测试的随意性 所有软件测试都应该追溯到用户需求 黑盒测试技术 黑盒测试 通过软件外部表现来发现其缺陷和错误,黑盒测试把测试对象看作一个黑盒子,完全不考虑程序内部结构和处理过程,只是检查测试对象是否按照需求规格说明书的规定正常实现: 等价类划分法 边界值分析法 错误推测法 因果图法 判定表驱动法 功能图法 黑盒 内部实现不可见 输入 输出 黑盒测试技术优点与缺点 优点: 对较大的代码单元来说,黑盒测试比白盒测试的效率高 测试人员不需要了解实现得细节,包括特定的编程语言 测试人员和编程人员是相互独立的 从用户的角度进行测试,很容易被接受和理解 有助于暴露任何与设计不一致或者歧异的地方 测试用例可以在设计完成后马上进行 缺点: 不能测试程序内部特定部位 只有一小部分可能的输入被测试到,要测试每个可能的输入流几乎是不可能的 没有清晰的和简明的需求和设计文档,测试用例很难被设计 等价类划分 等价类划分:就是把输入数据的可能值划分为若干等价类(等价类是指某个输入域的子集合。 在该集合中,各个输入数据对于揭露程序中的错误都是等价的)。 因此,可以把全部输入数据合理地划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,这样就可以少量的代表性测试数据,来取得较好的测试结果。 有效等价类:是指对于程序的规格说明来说,是合理的有意义的输入数据构成的集合。利用它可以检验程序是否实现预先规定的功能和性能。 无效等价类:是指对于程序的规格说明来说,是不合理的,是无意义的输入数据构成的集合。程序员主要利用这一类测试用例来检查程序中功能和 性能的实现是否不符合规格说明要求。 等价类划分实例 测试一个判断三条边能构成什么三角形的函数:F (int a, int b, int c),如

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档