最近需要向组内其他成员普及一下关于Java测试用例的相关知识,特在此进行一下简单的学习和总结。
JUnit简介
JUnit是一个开源的Java单元测试框架,JUnit4对原有的JUnit框架进行了大幅度的改进,主要目标便是利用了Java中的Annotation,来代替以前必须要继承AbstractTestCase,以及要测试的方法名称必须test为前缀。
JUnit4中提供了三个Annotation,用来控制整个测试的生命周期:
@Before
相当与测试用例的初始化工作,在执行每个测试用例方法时,都会先执行该方法。
@After
测试用例的清理工作在该方法中编写,在每个方法执行完成后,都会进行清理。
@Before和@After可以保证一些测试用例中的资源在这些方法执行,不会受到@Test方法执行顺序的影响。
@Test
这个是实际的测试方法,会根据该方法中的断言语句(Assert)来进行测试用例的执行结果显示输出。
在@Test中,还有一些属性,这些属性都是非常有用的:
expect=xxxx.class(extends Throwable)
如果我们在测试方法中能够预料到一些错误的发生,就使用该方法进行处理。有时候,一个函数抛出异常也许是你希望得到的结果。
timeout=xxxx(一个毫秒值)
如果测试方法没有在指定的timeout时间内执行完成,该测试失败,这对于单元测试效率非常有帮助。
如果正在实践测试驱动开发,@Ignor