1. 程式人生 > >go-單元測試

go-單元測試

待測試的程式碼

package main

import "errors"

func Division(a int32, b int32) (int32, error) {
    if 0 == b {
        return -1, errors.New("division by zero")
    }
    return a / b, nil
}

單元測試與效能測試

1、單元測試函式必須以Test開頭,入參為*testing.T

    單元測試命令 go test

2、效能測試函式必須贏Benchmark開頭,入參為*testing.B

   效能測試 go test -test.Bench ".*" -count=5 // 測試所有效能函式,測試測試為5次

package main

import "testing"

func Test_Division_1(t *testing.T) {
	if i, _ := Division(4, 6); i != 0 {
		t.Error("測試失敗")
	} else {
		t.Log("測試成功")
	}
}

func Benchmark_Division(b *testing.B) {
	for i := 0; i < b.N; i++ {
		Division(4, 6)
	}
}