單元測試測試單一函數或小片段邏輯,以確保修改後程式碼仍如預期運作。實戰案例包括編寫函數、建立測試檔案、定義測試案例並使用 t.Errorf 報告測試失敗。最佳實踐包括為每個函數編寫測試、使用有意義的測試案例名稱、測試各種輸入、經常運行測試並保持測試簡單。
單元測試是測試程式碼庫中的單一函數或小片段邏輯的過程。它們有助於確保在修改後程式碼仍然按預期運行,並減少引入錯誤的風險。
考慮以下函數,該函數計算兩個數字的和:
func Sum(a, b int) int { return a + b }
要測試此函數,我們可以建立一個測試檔案並使用 testing
套件:
import ( "testing" ) func TestSum(t *testing.T) { // 创建测试用例 testCases := []struct { a, b, expected int }{ {1, 2, 3}, {3, 5, 8}, {-1, -2, -3}, } for _, tc := range testCases { // 运行函数并获取结果 result := Sum(tc.a, tc.b) // 检查结果是否等于预期值 if result != tc.expected { t.Errorf("预期 %d,但得到 %d", tc.expected, result) } } }
使用以下命令編譯並執行測試:
go test
如果所有測試都通過,您將看到如下輸出:
PASS ok github.com/username/mypackage 0.004s
t.Errorf
報告測試失敗。 以上是golang函數的單元測試的詳細內容。更多資訊請關注PHP中文網其他相關文章!