我如何在Go Playground中使用测试包



testing软件包可在Go Playground中使用。

我如何使用Go Playground演示测试概念,而无需访问go test

我的假设是使用testing.runtests函数。我这样做的尝试总是只生成"测试:警告:没有测试可以运行"。

示例:https://play.golang.org/p/pvrcmdexhx

对于上下文,我的用例是用于与同事共享测试,示例和基准测试的快速示例。我经常依靠Go Playground共享代码片段。

您需要使用testing.Main

func main() {
    testSuite := []testing.InternalTest{
        {
            Name: "TestCaseA",
            F:    TestCaseA,
        },
    }
    testing.Main(matchString, testSuite, nil, nil)
}

https://play.golang.org/p/dqsigknwwd

如果要使用"不弃用"但不稳定的方式:

https://play.golang.org/p/4zh7didcap

dave的答案仍然可以用作调用测试的手动方法,但是如果您阅读"关于"现在自动支持测试:

如果程序包含测试或示例,并且没有主功能,则该服务将运行测试。由于该程序在资源有限的沙箱环境中运行,因此可能不支持基准测试。

操场上有执行时间限制,我相信它们小于台式使用的最小执行时间。从查看go test命令的源头,看起来当前的测试当前正确入口点是您可能使用或可能没有运气的testing.MainStart。从技术上讲,它是一种内部用途的API,不受兼容指南的约束,因此YMMV。

相关内容

  • 没有找到相关文章

最新更新