软件工程学教程(第二版) 教学课件 作者 周苏 王文 第9章 软件测试.pptVIP

软件工程学教程(第二版) 教学课件 作者 周苏 王文 第9章 软件测试.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
史料數位化之METADATA與AUTHORITY CONTROL / 陳雪華 软件工程学教程 第二版 第9章 软件测试 测试的基本概念 测试方法 单元测试、组装测试、确认测试 测试用例设计 测试工具 测试文件与测试复审 排错技术 系统转换 第9章 软件测试 虽然在每个阶段结束之前通过严格的技术审查,尽可能早地发现并纠正差错,但是,经验表明 审查并不能发现所有差错 在编码过程中还不可避免地会引入新的错误 软件测试在软件生存周期中占有重要的地位 测试阶段占用的时间、花费的人力和成本占软件开发的很大比重。大量统计资料表明,软件测试的工作量往往占软件开发总工作量的40%以上 直接影响软件质量,是保证软件可靠性的主要方法之一 第9章 软件测试 测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误 软件测试是保证软件质量的关键步骤,它是对软件需求说明、设计和编码的最后复审 通过测试发现错误之后,还必须诊断并改正错误,这就是调试 9.1 测试的基本概念 设计和编码等阶段的目的是为了开发出一个好的程序系统 而测试阶段努力设计的测试方案,其目的却是为了“破坏” 已经开发好的程序系统 测试阶段的根本目的是尽可能多地发现并排除软件中潜在的错误,以得到可运行的软件系统 9.1 测试的基本概念 测试并不能发现所有的错误,因为无论采用何种办法,都无法完成一个软件系统的所有各种状态的组合运行,因此,“彻底的”测试是不可能的。因此,策略只能是: 在一定的研制时间、经费的限制下,通过执行有限个测试过程,尽可能多地发现一些错误 所以,测试的基本问题就是经济性,测试的关键就成为如何设计出能尽可能多地发现错误的测试过程 能尽可能多地发现错误的测试用例被称为是“高产的” 9.1 测试的基本概念 软件测试可分成和需求分析、设计、编程相对应的三步,即: 单元测试 组装测试 确认测试 9.1 测试的基本概念 测试的基本流程包括: 设计一组测试用例 (每个测试用例应该由输入数据和预期输出结果两部分组成) 用各个测试用例的输入数据实际运行被测程序 检查实际输出结果与预期的输出结果是否一致 9.1 测试的基本概念 测试的规则 测试是为了发现程序中的错误而执行程序的过程 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案 成功的测试是发现了至今为止尚未发现的错误的测试 测试的两种方法:黑盒测试和白盒测试 9.1 测试的基本概念 软件测试的一些基本原则 在开始测试时,不应默认程序中不会找到错误 测试不应由编写程序的个人或小组来承担 测试文件必须说明预期的输出结果 要对合理的和不合理的输入数据都进行测试 除检查程序功能是否完备外,还应检查程序功能是否多余 应该完整地保留所有的测试文件 一个模块或多个模块中有错误的概率与已发现错误的个数成正比 9.2 测试方法 如何设计好的测试用例与如何衡量彻底度,是测试工作的两个关键的技术问题 按照测试过程是否在实际应用环境中运行来分类,可将测试技术分成 静态分析 动态测试 9.2 测试方法 测试方法分为测试的分析方法和非分析方法 分析方法通过分析程序的内部逻辑来设计测试用例,也适用于设计阶段对软件详细设计表示的测试。包括白盒法和静态分析法两种 非分析方法又称黑盒法,它是一种根据程序的功能来设计测试用例的方法。也适用于需求分析阶段对软件需求说明书的测试 9.2.1 静态分析技术 静态分析的对象可以是需求文件、设计文件或程序,找出其中的错误或可疑之处 静态分析时不执行被分析的程序 结构预查 流图分析 符号执行 9.2.2 动态测试技术 一个动态测试过程可分为五步 选取在定义域中的有效值,或定义域外的无效值 对已选的值决定预期的结果 用选取的值执行程序 观察程序的行为,并获取其结果 将结果与预期的结果相对比,如果不吻合,则证明程序存在错误 通过定义域中的每个元素执行上述测试过程,从而证明程序有无错误,这就是“穷尽测试” 9.2.2 动态测试技术 实际使用的测试方法只能是一种抽样检查,以把几乎无穷的穷尽测试变成一个可行的测试过程 为此,要寻找一个合适的定义域中具有代表的元——测试数据集,并且已经证明,并不存在寻找测试数据集的标准算法 9.2.2 动态测试技术 按产生测试数据的不同方式,动态测试可分为 功能测试,又叫“黑盒测试”,从需求分析说明书出发,按程序的输入、输出特性和类型选择测试数据 结构测试,又叫“白盒测试”,测试数据的产生涉及到程序的具体结构,所以应反映程序的结构性质 接口测试,包括测试数据接口和控制接口 数据接口主要是测试例行程序或模块间的数据传递的正确性 控制接口主要是测试例行程序或模块间的调用关系的正确性 黑盒测试 已经知道了产品应该具有的功能,通过测试来检验每个功能是否都能正常使用 黑

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档