【问题标题】:What is the point of "examples" in the go (golang) testing framework?go(golang)测试框架中的“示例”有什么意义?
【发布时间】:2014-06-26 10:29:11
【问题描述】:

我最近在 go 测试框架中阅读 testing and examples 并没有真正理解它们的用途。我看到文档说:

该包还运行并验证示例代码。示例函数可能包括以“输出:”开头的结束行注释,并在运行测试时与函数的标准输出进行比较。 (比较忽略前导和尾随空格。)

但是,我并不真正理解它存在的原因。在我编写测试时,似乎应该更清楚如何仅通过阅读单元测试和基准来使用代码。示例部分提供了哪些额外的动机?这对我来说似乎是多余的,但是,我确信 Go 的发明者提出了一个很好的理由,特别是因为他们似乎通过他们的语言设计来理解良好的编程实践。我希望了解他们的动机或如何在 golang 项目中以积极的方式使用这部分语言! :)

【问题讨论】:

    标签: testing go


    【解决方案1】:

    在 Go 中,源代码也用于生成文档。示例并非用于测试,而是用于文档。通过编译示例,您可以确保它们对任何使用它们的人都能正常工作。

    使用golang.org浏览文档时,标准库中的示例可以直接在浏览器中运行。 Godoc.org 而是将您的示例代码直接链接到 play.golang.org,您可以在其中试用。

    作为示例或示例用法,请参阅:http://golang.org/pkg/sort/

    【讨论】:

    • 此外,测试通常是抽象的,测试私有 API 和/或旨在捕捉边缘情况。拥有独立的示例(即“这就是你应该如何使用我的包/API”)让包用户更清楚,而不是试图拼凑你的 API + 测试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-16
    • 2017-04-29
    • 2011-01-07
    • 2012-11-15
    • 1970-01-01
    • 2014-10-17
    相关资源
    最近更新 更多