Go 語(yǔ)言 go test

2023-03-14 16:59 更新

原文鏈接:https://gopl-zh.github.io/ch11/ch11-01.html


11.1. go test

go test命令是一個(gè)按照一定的約定和組織來測(cè)試代碼的程序。在包目錄內(nèi),所有以_test.go為后綴名的源文件在執(zhí)行g(shù)o build時(shí)不會(huì)被構(gòu)建成包的一部分,它們是go test測(cè)試的一部分。

*_test.go文件中,有三種類型的函數(shù):測(cè)試函數(shù)、基準(zhǔn)測(cè)試(benchmark)函數(shù)、示例函數(shù)。一個(gè)測(cè)試函數(shù)是以Test為函數(shù)名前綴的函數(shù),用于測(cè)試程序的一些邏輯行為是否正確;go test命令會(huì)調(diào)用這些測(cè)試函數(shù)并報(bào)告測(cè)試結(jié)果是PASS或FAIL?;鶞?zhǔn)測(cè)試函數(shù)是以Benchmark為函數(shù)名前綴的函數(shù),它們用于衡量一些函數(shù)的性能;go test命令會(huì)多次運(yùn)行基準(zhǔn)測(cè)試函數(shù)以計(jì)算一個(gè)平均的執(zhí)行時(shí)間。示例函數(shù)是以Example為函數(shù)名前綴的函數(shù),提供一個(gè)由編譯器保證正確性的示例文檔。我們將在11.2節(jié)討論測(cè)試函數(shù)的所有細(xì)節(jié),并在11.4節(jié)討論基準(zhǔn)測(cè)試函數(shù)的細(xì)節(jié),然后在11.6節(jié)討論示例函數(shù)的細(xì)節(jié)。

go test命令會(huì)遍歷所有的*_test.go文件中符合上述命名規(guī)則的函數(shù),生成一個(gè)臨時(shí)的main包用于調(diào)用相應(yīng)的測(cè)試函數(shù),接著構(gòu)建并運(yùn)行、報(bào)告測(cè)試結(jié)果,最后清理測(cè)試中生成的臨時(shí)文件。



以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)