测试驱动开发.ppt

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

测试驱动开发技术 朱 宁 * * * 总 纲 传统软件开发流程 单元测试及JUnit 极限测试 测试驱动开发 传统软件开发流程 软件开发生命周期(Software Development Life Cycle) 需求分析 什么是需求分析(Requirements Analysis) ? 需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险(Risk)和评估项目代价(Cost),最终形成开发计划的一个复杂过程 需求分析包括需求的获取、分析、规格说明、验证、管理的一系列需求工程 需求分析阶段结束后,产生软件规格说明书(SRS, Software Requiements Specification) 需求分析 需求分析的作用 需求分析就是分析软件用户的需求是什么 任务就是解决”做什么”的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求 需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,在一个大型软件系统的开发中,他的作用要远远大于程序设计 需求分析 需求分析的过程 问题识别 从系统角度理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,及需求应该达到的标准 分析与综合 逐步细化所有软件功能,找出系统各元素间的联系, 分析是否满足需求,最终综合成系统的解决方案 编写规格说明书 编制文档,描述需求的文档称为软件需求规格说明书 评审 对功能的正确性,完整性和清晰性,以及其它需求给予评价,评审通过才可进行下一阶段的工作 软件设计 软件设计分为概要设计与详细设计两个阶段 需求明确之后,编码之前需进行软件设计 概要设计是结构设计,其主要目标就是给出软件的模块结构 详细设计的首要任务就是设计模块的程序流程、算法和数据结构,以伪代码实现设计程序逻辑,根据实际情况,很多公司将其与编码结合完成 概要设计 概要设计目的 将软件系统需求转换为未来系统的设计 逐步开发强壮的系统构架 使设计适合于实施环境,为提高性能而进行设计 ?将系统结构分解为模块和库 概要设计 概要设计的任务 制定规范 代码体系、接口规约、命名规则 总体结构设计 ? 功能模块:每个需求点都有相应的模块来实现 ??模块层次结构:某个角度的软件框架视图 模块间的调用关系:模块间的接口的总体描述 ??模块间的接口:传递的信息及其结构 ? 处理方式设计:满足功能和性能的算法 ??用户界面设计 数据库设计? 性能设计 概要设计 概要设计的内容 概述 术语表 系统界面原型 约束和假定 对象模型及描述 – UML类图 动态模型 – UML时序图 非功能性需求 概要设计的最终产物是概要设计说明书 编码 软件编码 将软件设计转换成计算机可接受的程序,即写成以某一程序设计语言表示的"源程序清单“ 充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量 面向对象的开发语言和开发环境合为一体,有效提高开发的效率,如Java集成开发环境Eclipse 开发周期中的测试 基于开发周期中不同阶段对不同对象所进行的测试 单元测试 - Unit Testing   由编程的开发人员自行计划与完成的,针对单个或相关联的一组程序单元的测试 集成测试 - Integration Testing   计划于设计阶段,由开发人员与测试人员合作完成的,针对结合起来的不同单元以及它们的接口的测试 系统测试 – System/Operational Testing   测试整个系统,以证实它满足要求所规定的功能、质量和性能等方面的特性 开发周期中的测试 基于开发周期中不同阶段对不同对象所进行的测试 回归测试 - Regression Testing   用于验证改变了的系统或其组件仍然保持应有的特性 验收测试 - Acceptance testing   测试整个系统,以保证其达到可以交付使用的状态 开发周期中的测试 测试用例 测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用以测试某个程序路径或核实是否满足某个特定需求。 单元测试用例依赖于详细设计说明书或代码,集成测试用例依赖于概要设计说明书,系统测试用例依赖于需求规格说明书 总 纲 传统软件开发流程 单元测试及JUnit 极限测试 测试驱动开发 单元测试 单元测试是用以测试规模较大软件程序中独立的子程

文档评论(0)

整理王 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档