Eclipse中使用JUnit3中测试用例需要继承TestCase类,在JUnit4中测试用例无需继承,只需要@Test等注解即可。我们在之前的文章我介绍过将JUnit4单元测试包引入项目中,此处不再赘述,请参考下文。
工具/原料
EclipseOxygenRelease(4.7.0)
方法/步骤
1、所嘀芟苒疾有以test开头的方法都会被JUnit自动运行,测试方法名称必须以test开头,没有参数,无返回值,是公开的,可以抛异常。如果采用默认的TestS锇栀劐箨uite,则测试方法必须是publicvoidtestXXX()[throwsException]{}的形式,并且不能存在依赖关系,因为测试方法的调用顺序是不可预知的。
2、JUnit4使用Java5中的注解(annotation),以下是JUnit4常用的几个annotation介绍:
3、@BeforeClass:针对所有畲驶郜杏测试,全局只执行一次,是第一个执行的,且必须为staticvoid。如下图所示:执行了两个test方法,但是@BeforeClass只输出一次,且输音浆纪娟出在最上面,由此可知该注解第一个执行且仅执行了一次。
4、@Before:初始化方法,在测试方法运行之前运行。如下图所示,由于执行了两个test方法,@Before被打印了两次,且均在test方法执行执行。
5、@AfterClass:针对所有测试,全局只会执行一次,而且是最后一个运行,且必须为staticvoid。由下图可知,执行了两个test方法后@AfterClass被打印出来,说明该注解只会执行一次,而且是最后一个运行。
6、@After:释放资源,在测试方法运行之后运行。由下图可知,在两次test测试方法之后都分别执行了@After的方法。
7、@Test:测试方法,在这里可以测试期望异常和超时时间。具体的实现如下图所示。
8、@Ignore:忽略此测试方法,由下图可知没有任何测试方法被执行,该测试方法被忽略。
9、总结:Junit注解的执酚祯馄嫱行顺序依次是@BeforeClass->@Before->@Test->@After->@Before->@Test->@Af墉掠载牿ter->@AfterClass。@Ignore会被忽略。