目前我正在使用以下命令運行我的測試,并在測試調用期間給出超時值。去測試 myModule -run TestSanity -v --race-timeout 10hGolang 測試模塊中有沒有辦法在程序執行期間設置它。就像是,func TestMain(m *testing.M) { // customTimeout = "10h" // m.Timeout(customTimeout) <--- Something like this code := m.Run() os.Exit(code)}
1 回答
牧羊人nacy
TA貢獻1862條經驗 獲得超7個贊
您可以編寫自己的函數來執行此操作:
func panicOnTimeout(d time.Duration) {
<-time.After(d)
panic("Test timed out")
}
func TestMain(m *testing.M) {
go panicOnTimeout(10 * time.Hour) // custom timeout
code := m.Run()
os.Exit(code)
}
這應該模擬做什么go test -timeout。一定要通過-timeout 0以防止觸發默認測試超時。
- 1 回答
- 0 關注
- 176 瀏覽
添加回答
舉報
0/150
提交
取消
