之前学习过junit3.8,今天学习一下junit4.x,在Android平台上也有相关的单元测试,可以说junit已经是单元测试的标准,现在将单元测试用在编程中确实没给我提高多大的效率,但是相信当真正熟练应用junit单元测试,并理解Junit里面单元测试的原理和其中的设计模式,必将给今后的编程带来很大的提高。
下面是要进行测试的类:
当使用junit3.8进行单元测试的测试类:
运行结果:
SetUp
TearDown
SetUp
TearDown
SetUp
TearDown
当使用junit4.x进行单元测试的测试类:
运行结果:
BeforeClass
SetUp
TearDown
SetUp
TearDown
SetUp
TearDown
AfterClass
从测试类和运行结果就能大致看出他们的不同:junit3.8的测试类是继承自TestCase,测试方法前都要加test,这是因为junit3.8采用了java里面的反射来找相应的类里的方法,他的setUp()和tearDown()方法每执行一个测试方法就执行一次。而junit4.x没有继承TestCase,而是采用Java5中新加入的静态导入的方式导入的方式import static org.junit.Assert.*;,他的测试方法前面不需要加上test,这是因为junit4采用的是java5里面的注解Annotation即使我们的测试方法写成下面的形式也是可以的:
还有就是增加了下面的两个方法:
这个正想他们的名字写的那样只在类开始和结束的时候调用,仔细观察就会发现这是一个静态的方法,也就说明了为什么只被调用一次。
本文对比分析了JUnit3.8与JUnit4.x在单元测试方面的差异,重点介绍了JUnit4.x的新特性,如注解的使用、@BeforeClass及@AfterClass等方法的应用。
10万+

被折叠的 条评论
为什么被折叠?



