2015-03-19 33 views
8

轉到測試包提到example functions爲:什麼是Go示例函數?

func Example() { ... } 
func ExampleF() { ... } 
func ExampleT() { ... } 
func ExampleT_M() { ... } 

的含義是什麼,並使用情況對這些?

+0

我什麼也看不到不清楚您鏈接到文檔。國際海事組織,你的問題等同於「規範提到'int'這是什麼意思和用例呢?」即如此模糊/基本或沒有真正的問題,因爲沒用。 – 2015-03-19 16:05:23

+1

@ icza的回答是現貨。該文檔沒有提到該示例函數與'godoc'一起使用,所以我不清楚你會使用它們。 – Calin 2015-03-19 16:21:26

回答

8

示例函數是您正在記錄的一個或多個函數或其他代碼的使用示例。實施例的功能將被包括在源代碼的形式生成的godoc(而其它功能都沒有),具有正確的格式,也施加一些處理,例如,如果該示例性函數的最後一行包含的格式輸出:

func ExampleExamples_output() { 
    fmt.Println("Hello") 
    // Output: Hello 
} 

指定輸出的最後一行將被剝離並呈現在一個單獨的塊中,如下所示:Example (Output)

此外,如果提供輸出:運行軟件包的測試套件(例如使用go test)也可以執行示例函數,而不需要進一步安排,Go會比較示例函數的輸出與最後註釋行中指定的輸出 - 這樣做的結果將決定此示例是否通過「測試」功能。如果在示例函數中未指定輸出,則go test將僅編譯它,但不會執行它。

看看這個頁面:package godoctricks

另外一個博客文章已發表了有關功能。例如:

Testable Examples in Go