我总是着急的解释我自己,却忘了厚爱无需多言
—— 24.6.21
一、Junit介绍
1.概述
Junit是一个单元测试框架,可以代替main方法去执行其他的方法
2.作用
可以单独执行一个方法,测试该方法是否能跑通
3.注意
Junit是第三方工具,所以使用之前需要导入jar包
二、Junit基本使用⭐
在方法定义上面加入@Test,并导入Junit的jar包然后点击方法左侧的绿色箭头,即可运行
package S112Junit;import org.junit.Test;public class Demo329Junit {@Testpublic void add(){System.out.println("add");}@Testpublic void delete(){System.out.println("delete");}@Testpublic void Mul(){int mul = 20/10;System.out.println(mul);}
}
三、Junit的注意事项
1、@Test不能修饰static方法
2、@Test不能修饰带参数的方法
3、@Test不能修饰带返回值的方法
四、Junit相关注解
@Before:在@Test之前执行,有多少个@Test执行,@Before就执行多少次 —> 都是用作初始化一些数据
@After:在@Test之后执行,有多少个@Test执行,@After就执行多少次 —> 都是用作释放资源使用
import org.junit.After;
import org.junit.Before;
import org.junit.Test;public class Demo330JunitArea {@Testpublic void add(){System.out.println("add");}@Testpublic void delete(){System.out.println("delete");}@Beforepublic void methodBefore(){System.out.println("我是@before");}@Afterpublic void methodAfter(){System.out.println("我是@after");}
}
五、@Test以后的使用
专门在一个类中进行测试,就不需要main方法了,在这个专门的类中进行测试即可
import org.junit.Test;
import org.w3c.dom.ls.LSOutput;import java.util.List;public class Demo331JunitTest {// 此方法专门测试add功能@Testpublic void add(){CategoryController cc = new CategoryController();int result = cc.addCategory("蔬菜");if(result == 1){System.out.println("result = "+result);System.out.println("添加成功");}else{System.out.println("添加失败");}}// 此方法专门测试find功能@Testpublic void find(){CategoryController cc = new CategoryController();List<String> list = cc.findAllCategory();System.out.println(list);}
}
其他注解
@BeforeClass:在@Test之前执行,只执行一次,可以修饰静态方法
@Afterclass:在@Test之后执行,只执行一次,可以修饰静态方法
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;public class Demo332ElseJunit {@Testpublic void add(){System.out.println("add");}@Testpublic void delete(){System.out.println("delete");}@BeforeClasspublic static void BeforeClass() throws Exception {System.out.println("Before Class");}@AfterClasspublic static void AfterClass() throws Exception {System.out.println("After Class");}
}