1. 程式人生 > >golang單元測試

golang單元測試

輸出 測試文件 多個 func 日誌 是否 測試用例 tin xxx

使用testing進行單元測試

  1. golang的測試庫testing

  2. 測試文件與被測試文件在同一個包中

  3. 測試文件名為被測試文件名(去後綴)_test.go

  4. 測試用例函數以Test開頭,TestFunc1(t *testing.T)

  5. 一個測試用例文件中可以有多個測試用例函數

在測試用例函數中調用被測試函數,根據函數返回結果與預期的正確結果的比較,

判斷函數是否正確。t.Log輸出日誌,t.Fatal輸出錯誤信息。

執行測試文件的方式

  • 執行全部測試文件中全部函數 go test 如果需要輸出日誌信息go test -v

  • 測試單個文件 go test -v xxx_test.go xxx.go
  • 測試單個方法 go test -v -test.run TestFunc1

// 測試文件  bt_test.go
package goo

import "testing"

func TestFunc1(t *testing.T) {
    result := Addto(100)
    if result == 5050 {
        t.Log("結果正確")
    } else {
        t.Fatal("結果有誤")
    }
}
// 被測試文件  bt.go
package goo

func Func1(n int) int {
    if n == 1 {
        return 1
    } else if n <= 0 {
        return -1
    } else {
        return Func1(n-1) + n
    }
}
// 執行結果
=== RUN   TestAddto
--- PASS: TestAddto (0.00s)
    bt_test.go:8: 結果正確
PASS

golang單元測試