1.Junit對某程序進行單元測試
測試步驟:
1.定義一個測試類(測試用例)
* 建議:
* 測試類名:被測試的類名Test CalculatorTest
* 包名:xxx.xxx.xx.test cn.itcast.test
2.定義測試方法:可以獨立運行
* 建議:
* 方法名:test測試的方法名 testAdd()
* 返回值:void
* 參數列表:空參
- 給方法前加@Test (點小燈泡處導入Junit 4.0,一個功能對應一個測試方法,也就是測試多個功能,需要加多個@Test!)
- 導入junit依賴環境(在這個測試方法中引用待測程序的方法並運行)
例:
- junit包的Calculator類中定義了add()和sub()方法
package edu.qdu.junit;
/**
* 計算器類
*/
public class Calculator {
//加法運算
public int add(int a,int b){
return a+b;
}
//減法運算
public int sub(int a,int b){
return a-b;
}
}
- 創建test包,並創建CalculatorTest類,在類中創建一個方法測試add()和sub()方法
package edu.qdu.test;
import edu.qdu.junit.Calculator;
import org.junit.Test;
/**
* 測試add方法
*/
public class CalculatorTest {
@Test
public void testAdd() {
// System.out.println("我被執行了");
Calculator c = new Calculator();
System.out.println(c.add(3,3));
}
}
判定結果:
我們看的並不是輸出的結果正確與否,而是測試顯示紅色(測試失敗)還是綠色(測試成功)。
2.斷言
有時候通過看輸出結果沒法判定程序上有邏輯性的錯誤(例如加法方法進行減法運算),爲此,引入斷言 (Assert)。
Assert.assertEquals(數據類型 expected,數據類型 actual);
如果期望的值(expected)等於實際的值(actual),則顯示綠色測試成功,否則,測試失敗。一般,我們會使用斷言操作來處理結果。
3.@Before 和 @After
@before :初始化方法。用於資源申請,在所有測試方法執行之前先執行該方法。
@After :釋放資源方法。在所有測試方法執行完成後,會自動執行該方法。