l Junit:
• 我们写好一个方法后经常希望对其单独进行测试,从前我们都是写一个main方法,在main方法中对被测试方法进行调用。这种方式相对麻烦。
• Junit是一个测试框架,利用它可以在不写main方法的情况下调用被测试方法,从而对方法中的代码进行测试。
l 要求:
• 被测试方法必须为无参数、非静态、无返回值的公共(public)方法。
• 测试用类必须为public类
l 测试过程:
• 在方法上加上注解:@Test
• 导入Junit框架jar包
• 在被测试方法上run as 运行JunitTest即可
• 写测试用例:
• @BeforeClass 在被测试类加载后立即执行,除了上述要求外还必须是静态的方法
• @AfterClass 在被测试类释放前执行,除了上述要求外还必须是静态的方法
• @Before 在测试方法执行前执行
• @After 在测试方法执行后执行
关于JutilTest的使用,举两个例子
public class Person {
@Test//需要导入Jutiltest包
publicvoid eat(){
System.out.println("eat!!!!!");
}
@Test
publicvoid run(String name){
System.out.println(name+ " run!!!!!!");
}
}
public class PersonTest {
Personp = null;
@BeforeClass//该注解表示测试方法进入字节码前需要运行的代码,例如在beforeClass中流的启用
publicstatic void beforeClass(){
System.out.println("beforeClass");
}
@AfterClass//该注解表示测试方法退出字节码前需要运行的代码,例如在beforeClass中流的关闭
publicstatic void afterClass(){
System.out.println("afterClass");
}
@Before//该注解表示测试方法运行前需要运行的代码,例如对象的初始化
publicvoid before(){
System.out.println("beformethod");
p= new Person();
}
@After//该注解表示测试方法运行前需要运行的代码
publicvoid after(){
System.out.println("aftermethod");
}
@Test//需要测试的方法
publicvoid testEat(){
p.eat();
}
@Test
publicvoid testRun(){
p.run("张三");
}
}