今天忽然用到了JUnit,可是发现很久不用以前看的都忘了,今天把这些写成博客,也能复习下~~
Junit概述:
当我们写完了一个类后,总是要执行一下类中的方法,查看是否符合我们的意图,这就是单元测试了。而Junit就是单元测试工具。
l 导包:导入Junit4或以上版本;
l 编写一个类:Person,它就是要被测试的类;
l 编写测试类:PersonTest,给出测试方法,在测试方法上使用@Test注解;
l 执行测试方法。
l 测试方法的作用:可以用来在一个类中给出多个测试方法,相当于一个类中有多个main方法的作用!
举个例子:
Person:
<p align="left"><strong><span style="color:#7F0055;">package</span></strong><span style="color:black;"> inidv.dyf;</span></p>
public class Person {
public void run() {
System.out.println("run");
}
public void eat() {
System.out.println("eat");
}
}
包资源管理器à选中Person类à右键ànewàJUnit TestCaseà修改包名为junit.testà下一步à选中要测试的方法。
PersonTest:
package junit.test;
import org.junit.Test;
import inidv.dyf.Person;
public class PersonTest {
@Test
public void testRun() {
Person person = new Person();
person.run();
}
@Test
public void testEat() {
Person person = new Person();
person.eat();
}
选中某个测试方法,鼠标右键àRun asàJunit Test,即执行测试方法。
@Test注解的作用是指定方法为测试方法,测试方法必须是public、void、无参的!!!
------除了@test,还有@Before和@After
如果你需要某个方法在每个测试方法之前先执行,那么你需要写一个方法,然后使用@Before来标记这个方法。例如在testRun()和testEat()方法之前需要创建一个Person对象。
PersonTest:
package junit.test;
import org.junit.Before;
import org.junit.Test;
import indiv.dyf.Person;
public class PersonTest {
private Person person;
@Before
public void setUp() {
person = new Person();
}
@Test
public void testRun() {
person.run();
}
@Test
public void testEat() {
person.eat();
}
}
@After注解标记的方法会在每个执行方法之后执行
@Before和@After标记的方法必须是public、void、无参。