1. 程式人生 >實用技巧 >其它 >Junit單元測試

Junit單元測試


技術標籤:Javajunit單元測試

Junit單元測試

測試分類:

  • 黑盒測試:不需要關注程式碼,給定輸入值,看程式是否能夠輸出期望的值
  • 白盒測試:需要關注程式碼,關注程式的具體執行流程

Junit使用:白盒測試

步驟:

  1. 定義一個測試類(測試用例)
  • 測試類名:被測試的類名Test,如CalculatorTest
  • 包名:xxx.xxx.xx.test,如com.leoDolphin.test
  1. 定義測試方法:可以獨立執行
  • 方法名:test測試的方法名,如testAdd()

  • 返回值:void

  • 引數列表:空參

  1. 給方法加註解@Test
  2. 匯入Junit的依賴環境
    判斷結果:
  • 紅色:失敗

  • 綠色:成功

  • 一般我們會使用斷言操作來處理結果

    • Assert.assertEquals(期望的結果,運算的結果)

補充:

兩個註解

  • @Before:修飾的方法會在測試方法之前被自動執行
  • @After:修飾的方法會在測試方法之後自動被執行(即便測試方法中測試出現異常)
package com.leoDolphin.junit;

public class Calculator {
    /**
     * 加法
     * @param a
     * @param b
     * @return
     */
    public int add(int a,int b){
        return a-b;
    }
    /**
     * 減法
     * @param a
     * @param b
     * @return
     */
    public int sub(int a,int b){
        return a-b;
    }
}
package com.leoDolphin.test;

import com.leoDolphin.junit.Calculator;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

public class CalculatorTest {
    /**
     * 初始化方法:
     *  用於資源申請,所有測試方法在執行之前都會先執行該方法
     */
    @Before
    public void init(){
        System.out.println("我是初始化!");
    }

    /**
     * 釋放資源的方法:
     *  在所有測試方法執行完後,都會自動執行該方法(即便測試方式中出現異常)
     */
    @After
    public void close(){
        System.out.println("我結束了!");
    }

    /**
     * 測試add方法
     */
    @Test
    public void testAdd(){
        System.out.println("我被執行了!");
        //1.建立計算器物件
        Calculator cclt = new Calculator();
        //2.呼叫add方法
        int result = cclt.add(1,2);
        System.out.println(result);
        //3.斷言  我斷言這個結果是3
        Assert.assertEquals(3,result);
    }

    /**
     * 測試sub方法
     */
    @Test
    public void testSub(){
        //1.建立計算器物件
        Calculator cclt = new Calculator();
        //2.呼叫add方法
        int result = cclt.sub(1,2);
        System.out.println(result);
        //3.斷言  我斷言這個結果是3
        Assert.assertEquals(-1,result);
    }
}

Junit單元測試


Junit單元測試