1、简介java
JUnit是一个开源的java单元测试框架。在1997年,由 Erich Gamma 和 Kent Beck 开发完成。这两个牛人中 Erich Gamma 是 GOF 之一;Kent Beck 则在 XP 中有重要的贡献(你以为眼熟一点都不奇怪)。正如常言道:“麻雀虽小,五脏俱全。” JUnit设计的很是小巧,可是功能却很是强大。数据库
下面是JUnit一些特性的总结:框架
1) 提供的API可让你写出测试结果明确的可重用单元测试用例单元测试
2) 提供了三种方式来显示你的测试结果,并且还能够扩展测试
3) 提供了单元测试用例成批运行的功能spa
4) 超轻量级并且使用简单,没有商业性的欺骗和无用的向导设计
5) 整个框架设计良好,易扩展开发
2、下载get
点击http://www.junit.org能够下载到最新版本的JUnit,本文使用的为4.4.3.1版。至于安装或者配置之类,你只须要轻松的将下载下来的压缩包中的jar文件,放到你工程的classpath中就能够了。it
这样,你的系统中就能够使用JUnit编写单元测试代码了!
3、介绍JUnit4.x
JUnit4.x是JUnit框架有史以来的最大改进,其主要目标即是利用Java5的Annotation特性简化测试用例的编写。
junit4.x版本咱们经常使用的注解:
A、@Before 注解:使用了该元数据的方法在每一个测试方法执行以前都要执行一次。
B、@After 注解:使用了该元数据的方法在每一个测试方法执行以后要执行一次。
注意:@Before和@After标示的方法只能各有一个。这个至关于取代了JUnit之前版本中的setUp和tearDown方法。
C、@BeforeClass 注解:在全部方法执行以前执行;
D、@AfterClass 注解:在全部方法执行以后执行;
注意:每一个测试类只能有一个方法被标注为@BeforeClass 或 @AfterClass,而且该方法必须是Public和static的。
E、@Test(timeout = xxx) 注解:设置当前测试方法在必定时间(毫秒)内运行完,不然返回错误;
F、@Test(expected = Exception.class) 注解:设置被测试的方法是否有异常抛出。抛出异常类型为:Exception.class;
G、@Ignore 注解:该元数据标记的测试方法在测试中会被忽略。当测试的 方法尚未实现,或者测试的方法已通过时,或者在某种条件下才能测试该方法(好比须要一个数据库联接,而在本地测试的时候,数据库并无链接),那么使用 该标签来标示这个方法。同时,你能够为该标签传递一个String的参数,来代表为何会忽略这个测试方法。好比:@lgnore(“该方法尚未实现”),在执行的时候,仅会报告该方法没有实现,而不会运行测试方法。