举例如下:
方法1:
TestSuite suite= new TestSuite(); suite.addTest( new TestCar("Car.getWheels") { protected void runTest() { testGetWheels(); } } ); return suite; |
方法2:
return new TestSuite(TestCar.class); |
TestRunner有textui,swingui,awtui三种界面,我们的例子使用的是textui。
同所有的java程序一样,main也是junit程序的入口点,在main方法中执行测试使用如下代码:
junit.textui.TestRunner.run(suite()); |
(四)assert:
TestCase的父类,自己编写的测试代码至少要使用一种assert方法,有assertEquals(),assertNotNull (),assertNull(),assertNotSame(),assertSame(),assertFalse(),assertTrue(),fail()方法。
建议:
a.最好对应每个要测试的类写一个测试类,但并不是都需要main方法。
b.测试类最好不与被测试类放在一个package中。
c.简单的set,get方法可以不测。
d.非public方法尽量不测(不是不可以测)。
e.不要用测试类的构造方法来执行初始化。
更多的请参阅JUnit最佳实践
三.一个可运行的测试案例
(一).被测试类:
package com.tide.prac; public class Car { public Car() { } public int getWheels(){ return 4; } } |