JUnit流程及注意点

一、固定流程
1、import导入junit.framework.*和junit.extensions.*(可选)
2、从TestCase extends一个类
3、定义储存状态的公用实例变量。
4、通过overriding setUp()来初始化公用变量。
5、通过overriding tearDown()在测试后清除初始化。
6、创建testXXX()的测试方法。
7、定义一个suite(),指定测试哪些类

二、注意点
1、当一个失败或者错误出现的时候,当前测试方法的执行流程将会被中止,但是(位于同一个测试类中的)其它测试将会继续进行。
2、对数组使用assertEquals()时,并不是比较数组的内容,而是比较数组引用本身,这大概不是我们要的。
3、当有测试失败的时候,无论如何都不能给原有代码再添加新的特性。
4、如果没有suite(),那么所有以test开头的方法都会被JUnit自动运行;否则就是按suite()指定的方法来运行。(public static Test suite(),常用到的方法是:TestSuite.addTest(Test test)和TestSuite.addTestSuite(Class testClass))
5、开始新项目时,总是从自定义基类继承而不是直接从JUnit的类继承是一个好主意,即使你的基类一开始没有添加任何额外的功能。这样的好处是,当你需要添加一个所有测试类都需要的方法时,可以简单得编辑你的基类,而不需要改动项目中的所有test case。
6、如果你编写了测试,但是正在编写能够通过测试的实现代码,那么这些还不具备实现代码的新测试未能通过,怎么办?解决的办法就是改名!因为JUnit是把“test”开头的方法作为测试来运行的,所以你只要把暂时无需测试的方法改名,比如“pendingTest”开头就行了。

三、新思维
1、我要对代码如何进行测试呢?
2、尽量把GUI代码和业务逻辑分开,有利于重用业务逻辑,也有利于测试。
3、测试驱动开发就是在编写实现代码之前,先编写测试代码

你可能感兴趣的:(JUnit)