junit测试框架简单应用
在实际开发中,写好的代码都要经过测试。一般我们都是自己写一个main方法来调用一下测试,但最近发现用junit测试框架做起来更方便。具体请看下面的代码:
public class Person {
private String name;
private int age;
public Person() {
this.name = "jack";
this.age = 20;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void Run() {
System.out.println(name + ": is running");
}
public void eat() {
System.out.println(name + ": is eatting");
}
}
上面就是一个普通的类,这个就是我们用来作为测试对象的类。为了清楚,我们再写一个Main类,用来调用测试,如下:
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class Main {
Person p = null;
@Before
public void before() {
System.out.println("before...初始化");
p = new Person();
}
@Test
public void testRun() {
p.Run();
}
@Test
public void testEat() {
p.eat();
}
@After
public void after() {
System.out.println("after...释放资源");
p = null;
}
}
在需要测试的方法前打个"@Test"标记,然后打开大纲视图在相应的方法上右键选择Run as -- Junit Test.如下图所示:

如果方法没有错误Junit框架会显示绿条,否则会显示红条。
还有一点:在上面的代码中我们用到了@before,@after。其实还有一对类似的@beforeClass,@afterClass。区别是:前一对会在每个测试方法执行前后都会执行,后者只在类加载前和类销毁前执行。执行结果对比:
@before,@after

@beforeClass,@afterClass

有一点需要注意用@beforeClass,@afterClass时,需要上面的代码要作一些调整,具体如下:
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
public class Main {
static Person p = null;
@BeforeClass
public static void before() {
System.out.println("before...初始化");
p = new Person();
}
@Test
public void testRun() {
p.Run();
}
@Test
public void testEat() {
p.eat();
}
@AfterClass
public static void after() {
System.out.println("after...释放资源");
p = null;
}
}

浙公网安备 33010602011771号