什么是Go示例函数?

时间:2015-03-19 10:01:55

标签: testing go

Go测试包提及example functions,如下所示:

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

这些是什么意思和用例?

1 个答案:

答案 0 :(得分:8)

示例函数是一个包或函数的使用示例或您正在记录的其他代码。示例函数将以源格式包含在生成的godoc中(而其他函数不包含),具有适当的格式,还应用了一些处理,例如,如果示例函数的最后一行包含以下格式的输出:

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

指定输出的最后一行将被剥离并在单独的块中呈现,如下所示:Example (Output)

此外,如果提供了输出:运行包的测试套件(例如,使用go test)也执行示例函数而无需进一步安排,并且Go将示例函数的输出与在最后一个注释行中指定的输出 - 结果将确定此示例函数是否为" test"经过。如果未在示例函数中指定输出,go test将仅编译它,但不会执行它。

查看此页面:package godoctricks

此外,还发布了一篇关于示例函数的博客文章:

Testable Examples in Go