Junit是一个开源的java单元测试框架。Junit设计非常小巧,但是功能却非常强大。
1)提供API可以让你写出测试结果明确的可重用单元测试用例。
2)提供了单元测试用例成批运行的功能。
3)超轻量级且使用方便简单,没有商业性的欺骗和无用的导向
4)整个框架设计良好,易扩展。
5)提供了三种方式来显示你的测试结果,而且还可以扩展。
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(“该方法还没有实现”),在执行的时候,仅会报告该方法没有实现,而不会运行测试方法。