JUnit那些事

    在一个项目中,程序员每天的工作无非是,将今天需要做得事情从svn服务器中checkout下来,然后运行一遍单元测试,之后开始编写代码,下班时,在运行一次单元测试,然后提交代码,周而复始。

    在一些小公司里,可能并不是那么规范,所以也可能不会用到junit,但是大部分比较正规的软件还是必须的,我们要做的就是,使自己更专业,做事更流程化、规范化,这才是你要去往的方向。

    企业开发一款软件,一般要经历一下几个阶段的测试,单元测试、模块测试、集成测试、压力测试等。测试的内容相当之多,这里我们就从单元测试开始。

    因为现在主要使用的还是junit4,所以主要讲junit4,下载地址:http://sourceforge.net/projects/junit/ 使用junit的基本原则是:

1、导入junit的jar,不建议直接使用eclipse中所提供的包。

2、在src目录下编写服务代码

3、创建测试类

    基本原则: 1、在eclipse中创建一个source folder命名为test

                 2、创建一个测试类所在的包,包的名称和测试的类一致。

4、Junit3和Junit4两者之间的区别是非常明显的

    在Junit3中,如果某个类需要是测试类,必须将其继承于TestCase, 如果某个方法需要是测试方法,必须让这个方法通过testXXX开头,在junit3中,如果希望指定某个测试方法运行之前运行某个初始化方法,这个方法的名称必须是setUp,如果希望在某个测试方法运行之后运行某个释放资源的方法,这个方法的名称必须是teadDown

    在Junit4中,一个POJO类就是一个测试类,测试方法通过@Test来标识,初始化方法通过@Before,释放资源的方法通过@After来标注。但是为了让Junit4中的测试类在Junit3中也可以使用,习惯与把初始化方法命名为setUp, 释放资源的方法命名为tearDown,测试方法也同样以test开头。

5、如何使用断言
   在junit4中提供了一个Assert的类,这个类中有大量的方法进行断言处理,在junit3中由于继承了TestCase,这个TestCase中提供了大量的assert方法

junit扩展工具hamcrest

下载地址:https://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-1.3.zip

hamcrest可以有效增加junit的测试能力,用一些相对通俗的语言来进行测试
要使用junit中的assertThat来进行断言
第一个参数表示实际值,第二个参数表示hamcrest的表达式

特别注意:如果使用junit4.10,必须把hamcrest的jar包移到junit的jar之前,否则,组合条件allOf,anyOf都会抛出异常。

组合多个测试类,同时测试使用TestSuite

package com.wp.util;

import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;

@RunWith(Suite.class)
@SuiteClasses({ TestA.class,
				TestB.class,
				TestCulcuate.class })
public class TestSuite {
	/*
	 * 测试原则:
	 * 	1、建议创建一个专门的source folder --> test来编写测试类代码
	 *  2、测试类的包应该保持和需要测试的类一致
	 *  3、测试单元中的每一个测试方法都必须可以独立执行,没有顺序
	 */
}



基本结构就是上面的样子。

   

转载于:https://my.oschina.net/u/814431/blog/268718

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值