go語言單元測試相關(guān)記錄

1:日志記錄

t.Name():

返回正在運(yùn)行的測試或基準(zhǔn)測試的名字。

t.Log t.Logf

參數(shù)t上的Log和Logf一般用于記錄一些常規(guī)信息,以展現(xiàn)測試程序的運(yùn)行過程以及被測試程序?qū)嶓w的實(shí)時(shí)狀態(tài)。
t.Log方法與fmt.Println函數(shù)使用方法類型,
而t.Logf方法則與fmt.Printf函數(shù)的使用方法類似。

2:錯(cuò)誤記錄

t.Error t.Errorf

參數(shù)t的Error和Errorf方法被用來記錄錯(cuò)誤信息。當(dāng)被測試程序?qū)嶓w狀態(tài)不正確的時(shí)候,就應(yīng)該調(diào)用t.Error和t.Errorf方法,及時(shí)度當(dāng)前的錯(cuò)誤狀態(tài)進(jìn)行記錄

致命錯(cuò)誤記錄 t.Fatl t.Fatalf

參數(shù)t的Fatl 和 Fatalf方法被用于記錄致命的錯(cuò)誤,所謂致命錯(cuò)誤是指使測試無法繼續(xù)進(jìn)行的錯(cuò)誤。
除法函數(shù),如果除數(shù)是0,則會(huì)出現(xiàn)panic錯(cuò)誤。

失敗標(biāo)記 t.Fail t.FailNow

參數(shù)t的方法t.Fail和t.FailNow被用來標(biāo)記測試結(jié)果為失敗的,不同的是t.Fail只把測試結(jié)果標(biāo)記為失敗,不會(huì)終止當(dāng)前測試,t.FailNow則會(huì)立即終止當(dāng)前的測試函數(shù),并標(biāo)記為失敗。

3忽略測試

t.Skip t.Skipf t.SkipNow

在實(shí)際開發(fā)中,我們會(huì)新增一些功能,之前的測試已經(jīng)進(jìn)行過,不需要在運(yùn)行,我們只想看新增的測試信息,需要忽略之前的測試,但是又要保留測試代碼,或者我們只想看某個(gè)測試,可以通過t.Skip和t.SkipNow、t.Skipf標(biāo)記測試。
t.Skip相當(dāng)于先調(diào)用t.Lop再調(diào)用t.SkipNow
,t.Skipf則相當(dāng)于先調(diào)用t.Logf再調(diào)用t.SkipNow。

4 并行運(yùn)行

t.Parallel

之前的測試都是順序進(jìn)行的,有的時(shí)候我們的某些功能依賴于前一個(gè)功能的結(jié)果,但有的時(shí)候不需要,尤其是當(dāng)測試用例非常多時(shí),我們希望可以并行運(yùn)行測試,以便加快測試進(jìn)度,通過調(diào)用t.Parallel,可以把測試標(biāo)記為可以并發(fā)執(zhí)行的,可以讓測試并發(fā)d地執(zhí)行它以及其他科并行的函數(shù)
測試同時(shí)進(jìn)行,測試輸出顯得比較混亂,測試的輸出也沒有按照測試函數(shù)在測試文件中聲名的順序進(jìn)行,而是隨機(jī)的。

5 性能測試后續(xù)補(bǔ)充

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容