第3章 单元测试-JUnit.pptVIP

  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文档。上传文档
查看更多
第3章 单元测试-JUnit

19-Dec-03 Phd Thesis - Haris Baltzakis 第3章 JUnit单元测试框架 单元测试工具--Junit 1.Junit简介 Junit试一种简单但有效的单元测试框架. 1997年,Erich Gamma和Kent Beck为Java语言创建的一种单元测试框架. 一种开源的软件 可以和Java的开发环境进行很好地集成,比如JBuilder中就自动集成了JUnit框架。也支持一些其他的Java开发工具,如:JDeveloper,Eclipse,IntelliJ,TogetherJ等。 测试工具的使用--Junit 由于Junit相对独立于所编写的代码,测试代码的编写可以先于实现代码的编写,XP中推崇的Test First Design的实现有了现成的手段:用JUnit框架编写测试代码,编写实现代码,运行测试,测试失败,修改实现代码,再运行测试,直到测试成功。以后对代码的修改和优化,运行测试成功,则修改成功。 Junit的下载与安装 (1)首先把JUnit3.8.1这个文件解压到c:\ (2)设置环境变量的值,使系统能够找到JUnit的路径。 Junit的下载与安装 (3)设置系统变量classpath的值,加入如下路径: c:\JUnit3.8.1\junit.jar (4)注销重新登陆即可。 Junit的下载与安装 如果想验证JUnit是否配置成功,可以编译一下包括下面import语句的源文件: import junit.framework.*; 如果编译成功,就证明编译器已经找到了JUnit。 JUnit核心 TestCase(测试用例)-扩展了JUnit的TestCase类的类.以testxxx方法的形式包含一个或多个测试. TestSuite(测试集合)-一组测试,把多个相关测试归入一组的便捷方式. TestRunner(测试运行器)-执行test suite的程序. 这三个类是JUnit框架的骨干. Junit的框架组成 Test:运行测试并把结果传递给TestResult Assert:当条件成立时assert方法保持沉默,但若条件不成立就抛出异常. TestResult:测试结果的描述与记录 TestListener:测试过程中的事件监听者 前三个类和后4个类紧密配合,形成JUnit框架的核心 测试人员对TestCase类进行继承开发自己的类测试驱动程序.其余的类用来支援TestCase类,比如TestSuit用来聚合多个测试用例(TestCase),Assert类实现期望值(Expected)和实际值(Actual)的验证,TestResult收集所有测试用例执行后结果.Test接口是这个包的关键所在,它建立了TestCase和TestSuite之间的关联,同时为整个框架做了扩展预留. Test接口 用来运行测试和收集测试结果 它的public int countTestCases()方法用来统计本次测试有多少个TestCase. public void run(TestResult)方法中,参数TestResult做为接受测试结果的实例,run方法用于执行本次测试。 TestCase抽象类 用来定义测试中固定方法. TestCase是Test接口的抽象实现。 其构造函数TestCase(String name)可以根据输入的测试名称创建一个测试用例. setUp()方法用于集中初始化测试所需的所有变量和实例,并在调用测试类中的每个测试方法前都会再次执行,这样保证了每次测试的独立性. tearDown()方法则在执行测试后,释放变量和实例. Assert静态类 包含了一组静态的测试方法.主要是能够测试不同条件的断言方法(assertion method)用于期望值和实际值比对. 如果失败,Assert类抛出一个AssertionFailedError异常,JUnit测试框架将这种错误归入Fails并加以记录,同时标志为未通过测试。 常用的断言方法 TestSuite测试套件类 TestSuite负责组装多个Test Cases. 测试中可能包括了对被测类的多个测试,TestSuite负责收集组合这些测试,以便可以在一个测试中,完成全部的对被测类的多个测试. TestSuite类实现了Test接口,且可以包含其他的TestSuites.它可以处理加入Test时抛出的所有异常。 TestSuite处理测试用例时有5个规则,如下: 测试用例必须是公有类(Public)。 测试用例必须继承TestCase类。 测试用例的测试方法必须是公有的(Public)。 测试用例的测试方法必须被声明为void。 测试用例中测试方法的前置名词必须是test。 TestResult结果类和其

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档