2 回答

TA貢獻1802條經驗 獲得超5個贊
測試將在包含測試的目錄中運行
所以 Getwd 將給出該目錄的路徑
測試目錄下文件中測試數據的文件名應以下劃線開頭_
但是,您的程序需要一個名為“file.txt”的文件。為了支持測試這個不以_
在(例如)/tmp 中創建文件 file.txt 開頭的文件路徑,在運行測試之前立即對 /tmp 執行 chdir 并讓測試獲取剛剛創建的文件

TA貢獻1871條經驗 獲得超8個贊
為了編寫單元測試,你需要在同一個包中創建一個文件,假設fileName_test.go 你的文件名是這樣的read.go,那么你的測試文件名應該是read_test.go。
read_test.go
package main
import (
"testing"
"fmt"
)
func TestReadOneFile(t *testing.T) {
var a Source
f, err := a.readOneFile()
if err != nil {
t.Errorf("incorrect")
} else {
fmt.Println("passed")
}
}
在這里你必須用Testas 前綴命名你的測試函數名稱并且需要導入包testing。
創建單元測試后,您可以通過運行以下兩個命令來檢查代碼覆蓋率:
1. go test --coverprofile coverage.out
2. go tool cover -html=coverage.out
- 2 回答
- 0 關注
- 160 瀏覽
添加回答
舉報