基本用法是
1、import junit 包
2、定义一个测试类,最好以test开头,以方便ide自动搜索测试,测试类继承自TestCase,然后在里面写自己的test 方法,测试代码主要是运行类的各种方法,并用assert判断是否与预期相同。核心的assert 方法有
assertTrue ,assertFalse,assertNull,assertNotNull,assertSame,assertNotSame,assertEquals,还有一个fail直接写fail(),就会提示测试失败。
public class testMath extends TestCase{
public void testSum(){
assertEquals("3加2应该等于5",5,math1.sum(3,2));
}
}
3、如果测试类里面的每个测试都需要初始化某些资源,那么可以把初始化的代码放到测试类的初始化方法(setUp)里面,并在类的拆卸(tearDown)方法里面作善后工作。例如,在作数据库测试的时候,可以在(setUp)方法里面备份当前数据库,并把当前数据库里面的数据恢复为测试数据,并在(tearDown)方法里面将数据库恢复为当前数据。junit 会为每个测试方法运行一次(setUp)和(tearDown),以保证各个测试方法之间互不影响。
public class testMath extends TestCase{
public void setUp(){
初始化代码;
}
public void tearDown(){
善后代码;
}
public void test1(){
.......(测试代码1)
}
public void test2(){
.......(测试代码2)
}
public void test3(){
.......(测试代码3)
}
}
在这个例子里面,(setUp)和(tearDown)会被执行三次。
关于testCase 的管理
多个testCase可以被添加到一个testSuite里面,多个testSuite也可以被加到一个testSuite里面。
public class TestMySuit extends TestSuite{
public TestMySuit(){
super();
}
public static Test suite(){
TestSuite suite = new TestSuite();
suite.addTestSuite(myTest1.class);
suite.addTestSuite(myTest2.class);
return suite;
}
关于junit自己的扩展
1、ActiveTestSuite