JUnit的作用(是一個第三方的組件,eclipse帶了JUnit)
一個工具,用于單元測試,Java Unit 單元
單元:一個類或是一個方法
2. 在eclipse中的使用
?? 操作步驟:在工程名上點右鍵-> Build Path -> add Libraries –> JUnit
?
測試方法:???? 使用JUnit測試的時候,不用main函數,每個測試方法都可以單獨運行。
??? 1. 測試方法的特點:
??????? @Override 注解:重寫一個方法
??????? @return 返回值
??????? 1) 注解:在JUnit中,所有要測試的方法,使用@Test注解
??????????? 這個方法就會自動運行,每個注解其實都類似于一個類,使用的時候要導入
???????????
??????? 2) 命名:
??????????? 名字可以任意起,建議測試方法一般以test開頭,后面的名字采用駝峰命名法。
???????????
??????? 3) 測試方法的特點:
??????????? a. 必須是public
??????????? b. 沒有返回值
??????????? c. 方法沒有參數
??????????? d. 方法可以拋出異常
??? 2. 如何運行測試方法:
??????? 1) 方法:選中某個方法的名字,再運行。
??????? 2) 類:選中某個類,在類上點右鍵,再運行,運行整個類中的所有的測試方法。
??????? 3) 項目:在項目上點右鍵,運行JUnit,則整個工程中所有的測試類都會被運行。
???
??? 3. 查看測試結果
??????? 1) 綠色:表示測試通過
??????? 2) 紅色:表示測試失敗或出現異常
?
初始化環境和清理環境方法
??? 1. 注解的介紹:
??????? @BeforeClass: 所有的方法運行前運行一次,必須是靜態方法
??????? @Before 要在所有的測試方法運行前運行,每個方法都運行一次
??????? @Test 用在方法上,表示這是一個測試的方法
??????? @After 要在所有的測試方法運行后運行,每個方法都運行一次
??????? @AfterClass:所有的方法運行后運行一次,必須是靜態方法
???????
??????? 否則會出現以下異常:
??????? java.lang.Exception: Method init() should be static
??????? java.lang.Exception: Method destroy() should be static
public class Demo1 {//聲明全局變量Calc calc = new Calc();/*public static void main(String[] args) {//實例化類Calc calc = new Calc();int result = calc.add(5, 3);int r2 = calc.subtract(6, 2);System.out.println(result);}*///有一個方法要在所有的測試方法運行前運行,每個方法都運行一次 @Beforepublic void begin() {System.out.println("我在你前面運行了");}@BeforeClasspublic static void init() {System.out.println("所有的方法運行前運行一次");}@AfterClasspublic static void destroy() {System.out.println("所有的方法運行完以后運行一次");}@Afterpublic void end() {System.out.println("我在測試方法后面運行");}/** a. 必須是publicb. 沒有返回值c. 方法沒有參數*/@Testpublic void testAdd() {System.out.println(calc.add(4, 8));}@Testpublic void testSubtract() {System.out.println(calc.subtract(7, 3));}}