学会使用JUnit来测试程序

来源:互联网 发布:注册表中删除java 编辑:程序博客网 时间:2024/06/12 04:21

利用JUnit测试程序是非常方便的,而不需要像以前用main方法来测试程序。

下面介绍一下如何使用JUnit来测试我们想要测试的程序代码:

示例代码:

public class Person {public void run(){System.out.println("run");}public void eat(){System.out.println("eat");}}

具体做法如下:

1.另新建一个java文件TestDemo.java

@Testpublic void test1(){Person p=new Person();p.run();}
注意:我们在test1()方法上加上了@Test 关键字!

然后在outline视图中找到TestDemo,TestDemo下列有它的所有的方法.

我们在outline视图选中test1()方法, 右键,选中 runas  ->JUnit Test  就可以对这个方法进行测试。这是在测试程序时经常使用的。


2.关键字@Before @After

@Beforepublic void before(){System.out.println("before");}@Testpublic void test1(){Person p=new Person();p.run();}@Afterpublic void after(){System.out.println("after");}

注意:我们一样测试方法test1(),但是测试结果却如下:

before

run

after

分析:当我们只测试test1()时,会自动调用before()和after()方法(方法名可以任意),这是因为他们分别被关键字@Before   @After  修饰。

被 @Before 修饰的方法会在test1()方法之前被调用,被@After修饰的方法会在test1()被执行后再执行。

这样当我们要测试的方法要使用的一些资源要提前加载时,就可以放在被@Before 修饰的方法中;释放资源放在被@After修饰的方法中。


3.关键字  @BeforeClass @AfterClass 

@BeforeClasspublic static void beforeClass(){System.out.println("before class");}@Testpublic void test1(){Person p=new Person();
p.run();
} @AfterClasspublic static void afterClass(){System.out.println("after class");}

同样我们只测试方法test1()时

结果:

before class

run

after class 

分析:当在加载这个测试类之前,会先执行被@BeforeClass 关键字修饰的方法,然后再执行test1(),最后执行被@AfterClass 关键字修饰的方法

4.分析@ Before  @BeforeClass  @After @AfterClass  的区别

示例代码:

@BeforeClasspublic static void beforeClass(){System.out.println("before class");}@Beforepublic void before(){System.out.println("before");}@Testpublic void test1(){Person p=new Person();p.run();}@Testpublic void test2(){Person p=new Person();p.eat();}@Afterpublic void after(){System.out.println("after");}@AfterClasspublic static void afterClass(){System.out.println("after class");}

在outline视图中选中TestDemo类,并右键t选中runas->JUnit Test 进行测试。


结果:

before class
before
run
after
before
eat
after
after class

当每次执行一次被@Test修饰的方法时,都会执行一次@Before    @After

被@After @Before修饰的方法只会在第一次类加载时才会执行一次


注意:被@After @Before修饰的方法只能是static方法








原创粉丝点击