《软件工程》第7章-软件测试.pptxVIP

  1. 1、本文档共25页,可阅读全部内容。
  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文档。上传文档
查看更多
《软件工程》第7章-软件测试

软件工程 Software Engineering 1 第七章 软件测试 软件测试定义 软件测试目的、目标 软件测试原则 软件测试方法 软件测试步骤 2 软件测试定义 软件测试是为了发现软件产品中缺陷和错误而审查文档和程序的过程。 软件开发过程中的任何阶段都有可能引入缺陷。 软件测试是发现软件中错误和缺陷的主要手段。 软件开发人员通过软件测试发现产品中存在的问题,并对其进行及时的修改。 为评价和改进产品的质量、标识产品的缺陷和问题而进行的活动。 错误发现的越早,代价就越小。 3 说明 一般的软件组织要用一半以后上的精力来查找和修复缺陷。 由于测试时间难以预计,产品缺陷常常是产生超支和延期的主要原因。 4 缺陷来源 即使有经验的程序员,一般开发7~10行源程序会引入一个缺陷。 一般在编译阶段能够发现和纠正大部分的缺陷,但还有许多缺陷仍然留在最终产品中。 当程序员犯了错误并因此产生缺陷时,称为引入缺陷。 5 缺陷是指程序中存在的错误。 所有的缺陷都源于人的错误。 测试用例 测试人员根据测试用例进行测试。 测试用例是为了测试软件而设计的一组数据,包括输入数据和预期输出的结果。 6 测试用例={输入数据 + 预期结果} 测试目的、目标 目的:以最少的人力、物力和时间投入、尽可能多地发现软件中的各种错误。 目标: 测试是一个为了发现错误而执行程序的过程 一个好的测试用例是很可能找到至今为止尚未发现的错误的用例 一个成功的测试是指发现了至今为止尚未发现的错误的测试 7 软件测试原则 完全测试是不可能的 软件测试只能表明缺陷的存在,不能证明软件产品已没有缺陷 软件产品中潜在的错误数与已发现的错误数成正比 让不同的测试人员参与到测试工作中 开发工作和测试工作不能由同一部分人来完成 尽早并不断地进行测试,使测试工作贯穿整个软件的开发过程 在设计测试用例时,应包括输入数据和预期的输出结果两部分,并且输入数据不仅应该包括合法的情况,还应该包括非法的输入情况 要集中测试容易出错或错误较多的模块 应该长期保留所有的测试用例 8 测试方法 静态测试(软件评审):通过阅读文档和源代码,检查程序的正确性、一致性、逻辑性,从而发现错误或缺陷。 审查:阅读并讨论设计文档和程序代码 走查:阅读并讨论程序代码 动态测试:通过测试用例运行实际被测程序来发现错误或缺陷。 白盒测试(结构测试):关注内部细节和实现逻辑,适用于小的构件 黑盒测试(功能测试):只关注输入输出,不关注内部结构,适用于大的功能模块 9 软件测试分类 功能测试:检验软件产品是否实现了需求规格书中的所有功能需求。 可靠性测试:在多长时间内一直运行并且给出期望的结果值进行测试。 可用性测试:在最短时间内从故障中恢复的能力进行测试。 性能测试:负载测试、容量测试、压力测试等。 安全性测试:用户管理、访问控制、数据备份与恢复、入侵检测等。 10 软件测试一般步骤 11 单元测试 集成测试 系统测试 验收测试 软件中最小的单元,如函数、类 白盒测试 对测试的单元模块组装成子系统进行测试 黑盒测试 将整个软件系统看作一个整体进行测试 以用户测试为主 测试:用户、测试人员、开发人员 测试:最终用户 详细设计 概要设计 需求分析 每个阶段都要输出软件测试分析报告 软件测试一般步骤 12 单元 测试 单元 测试 单元 测试 集成 测试 系统 测试 已测试 系统 已测试 模块 已集成 软件 模块1 模块2 模块n …… 验收 测试 交付使用 单元测试 测试模块的接口和内部结构能否完成预定的功能。 接口测试 局部数据结构测试 路径测试 边界测试 出错处理测试 13 集成测试 发现与模块接口有关的各种错误 接口测试 回归测试:对已经测试过的模块重新测试,以确保新添加的模块不会对系统产生无法预料的副作用。 14 系统测试 基于整个计算机系统的各种不同类型的测试 恢复测试:检验系统的容错能力 安全测试:检验计算机系统对非法入侵、攻击的防范能力 压力测试:检验系统在超负荷情况下的承受力和对异常情况的抵抗能力 性能测试:系统的运行性能 15 验收测试 测试 用户在开发者的“指导”下对软件进行测试,开发者负责记录错误。 是在一个受控的环境下进行的。 测试 最终用户自行测试并记录测试中遇到的问题并反馈给开发者 是在一个不受控的环境下进行的 16 设计缺陷的起因 设计错误 知道应该做什么样的设计,但犯了一个错误 误解了要做的内容 不明白系统的语境 17 调试 调试的目的就是找出产生错误的原因和产生错误的准确位置,并进行改正、排除错误。 发现错误 改正错误 18 发现缺陷 编译器:编译器不能查出所有的语法错误,大雨9.4%的语法错误会通过编译器。 测试:除了最简单的程序,任何程序的完全测试都是不可能的。 发行仍然还有缺陷的产品,

文档评论(0)

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

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

1亿VIP精品文档

相关文档