Go語言 - Go單元測試
阿新 • • 發佈:2021-07-18
任何程式都需要進行單元測試,以便在開發階段就能儘早發現bug,下面是一個Go語言的單元測試案例。
接上一次工程管理的專案,在 sub 目錄建立 add.go ,編寫一個加法函式:
package sub
/**
* 計算num1 + num2的值
*/
func Add(num1 int, num2 int) int {
return num1 + num2
}
在 add.go 專案的目錄下,新建 add_test.go(名稱為xxx_test.go,xxx為要測試程式的檔名稱),內容如下:
package sub // 匯入測試需要使用的包 import "testing" /** * 測試add.go的Add方法 */ func TestAdd(t *testing.T) { // t是go test時傳入的引數 sum := Add(1, 2) // 呼叫 add.go中的Add函式進行測試 if sum != 3 { t.Errorf("Add(1, 2) 測試失敗,返回值為%v, 1 + 2 應該等於 3", sum) } }
執行測試:
cd sub # 切換到sub目錄
go test .
修改 add.go 讓錯誤發生:
package sub
/**
* 計算num1 + num2的值
*/
func Add(num1 int, num2 int) int {
return num1 + num2 + 1
}
再次執行 go test .
,結果如下:
==============================================================================
關注 公眾號 “HiIT青年” 傳送 “go” 獲取go安裝包。(如果沒有收到回覆,說明之前取消過關注。)
關注公眾號,閱讀更多文章。