导航

进入黑马day1-JunitTest测试

Posted on 2013-02-25 20:16  酷鱼影子  阅读(135)  评论(0编辑  收藏  举报

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("张三");

       }

}