网站大量收购独家精品文档,联系QQ:2885784924

Junit单元测试技术幻灯片.ppt

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

Junit单元测试技术 讲解人:王建华 Email: wangjianhua@ 讲解内容 测试技术介绍 JUnit3.8单元测试及实例 单元测试最佳实践 Mock Objects技术 JUnit相关工具及其扩展 Spring对测试的支持 JUnit4.0介绍 测试驱动开发(TDD) QA 软件测试的基本概念 软件测试是利用测试工具按照测试方案和流程对产品确认的过程 是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。 软件测试具有一套完整方法论,和软件工程具有同等的地位 软件三剑客 开发、测试、运维 软件测试内容 软件测试主要工作内容是验证(verification)和确认(validation ) 验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing) 确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right) ,包括静态和动态确认 软件测试分类 从是否关心软件内部结构和具体实现的角度划分   A.白盒测试   B.黑盒测试   C.灰盒测试   从是否执行程序的角度     A.静态测试   B.动态测试。   从软件开发的过程按阶段划分有     A.单元测试   B.集成测试   C.确认测试   D.系统测试   E.验收测试 软件测试类型1 软件测试类型2 单元测试:测试单个对象是否工作正确 集成测试:测试多个对象之间,多个子系统之间以及系统环境配置是否工作正确 功能测试:测试整个应用是否工作正确 性能测试:测试系统的性能 验收测试:验证用户是否喜欢我的程序 软件测试模型-V 软件测试是一个过程,对应开发一样,存在不同的组织模型,测试过程是根据软件开发过程模型的而变化。 经典软件测试模型 软件测试模型-W W模型由Evolutif公司公司提出,相对于V模型,W模型增加了软件各开发阶段中应同步进行的验证和确认活动。 软件测试模型-H  H模型中, 软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段。 软件测试模型-H X模型也是对V模型的改进,X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序。 单元测试技术 单元测试又称模块测试,是针对软件设计的最小单位 ─ 程序模块(对象),进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。基于面向面向对象我们测试的对象就是类的实例。 单元测试的内容 模块接口测试 :测试接口参数和输出类型、值进行测试 局部数据结构测试 :测试内部数据是否正确 路径测试:测试控制流是否正确 错误处理测试:测试异常处理是否正确 边界测试:测试数据边界情况,例如 大于 等于 单元测试由谁编写 程序员本身 程序员Pairs 强调一点,单元测试是开发人员的工作职责而不是测试人员的职责,在不同的技术体系中,单元测试应用的工具可能不一样,但是都存在编码任务. JUnit 开源的Java单元测试框架 结构: TestSuites TestCase [Java class] Test [Java method] Fixtures: common setup/teardown code JUnit3.8例子 断言(assert) assertFalse assertEquals assertNotEquals assertNull assertSame … 运行JUnit测试(TestRunner) 命令行 JUnit自带的Swing界面 IDE集成(Eclipse,Netbean) Ant,Maven 最佳实践1(Test命名及存放) 1.相同的package不同的存放位置 2.Calucator的测试类为CalucatorTest 3.add()的测试方法为testAdd() 最佳实践2 细粒度的测试 一个测试只测试一个方法(或多个测试测试一个方法) 测试隔离 测试之间相互独立,没有依赖性 為assert增加描述 TestCase生命周期(例子) TestSuites(一组测试) 评估测试结果 测试结果报告 代码测试覆盖率报告 测试报告(例子) 测试覆盖率报告(例子) 最佳实践 自动化运行测试 持续集成(CruiseControl

您可能关注的文档

文档评论(0)

liwenhua11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档