Go 中使用單元測試框架進行單元測試:匯入 testing 套件。寫出以 Test 為前綴的單元測試函數。使用斷言函數(如 assertEqual())驗證測試結果。執行單元測試(go test),驗證函數的正確性。
如何使用單元測試框架對Go 函數進行測試
#單元測試是驗證單一函數或方法正確性的至關重要的軟體開發實務。在 Go 中,使用單元測試框架(如 testing
套件)進行單元測試非常簡單。
安裝單元測試框架
testing
套件是 Go 標準函式庫的一部分。要使用它,請在你的專案中導入testing
套件:
import "testing"
編寫單元測試
##每個單元測試都是一個以Test 為前綴的函數。它接受一個指標
*testing.T 作為參數,該參數用於報告測試結果和記錄失敗資訊。
func TestAdd(t *testing.T) { result := Add(1, 2) if result != 3 { t.Errorf("Add(1, 2) = %d; want 3", result) } }
斷言
#testing 套件提供了一系列斷言函數,用於驗證測試結果。常用的斷言包括:
考慮一個計算兩個數字總和的
Add() 函數:<pre class='brush:go;toolbar:false;'>func Add(a, b int) int {
return a + b
}</pre>
我們可以寫一個單元測試來驗證此函數:
import "testing" func TestAdd(t *testing.T) { tests := []struct { a, b, want int }{ {1, 2, 3}, {0, 0, 0}, {-1, -1, -2}, } for _, test := range tests { result := Add(test.a, test.b) if result != test.want { t.Errorf("Add(%d, %d) = %d; want %d", test.a, test.b, result, test.want) } } }執行測試
##若要執行單元測試,請使用go test
指令。它將查找並運行專案中所有Test* 函數。
go test
如果測試通過,它將輸出以下結果:
PASS ok my_project/my_package 1.730s否則,它將報告失敗的測試,包括錯誤訊息。
以上是如何使用單元測試框架對 Golang 函數進行測試?的詳細內容。更多資訊請關注PHP中文網其他相關文章!