我想获取使用 运行的测试数量go test,作为一种校验和来检测所有测试是否正在运行。由于 Go 依赖文件名和方法名来确定什么是测试,因此很容易输入错误,这意味着测试将被默默地跳过。
我认为gotestsum工具很接近您正在寻找的东西。\n它是一个包装器,用于go test打印格式化的测试输出和测试运行的摘要。
默认go test:
go test ./...\n? github.com/marco-m/timeit/cmd/sleepit [no test files]\nok github.com/marco-m/timeit/cmd/timeit 0.601s\nRun Code Online (Sandbox Code Playgroud)\n默认gotestsum:
gotestsum \n\xe2\x88\x85 cmd/sleepit\n\xe2\x9c\x93 cmd/timeit (cached)\n\nDONE 11 tests in 0.273s <== see here\nRun Code Online (Sandbox Code Playgroud)\n查看文档和内置帮助,写得很好。
\n根据我的经验,gotestsum(以及同一组织的其他工具)很好。对我来说,能够使用标准的 Go 测试包,而不需要其他“测试框架”也非常重要。Gotestsum 允许我这样做。
\n另一方面,为了真正满足您的要求(打印声明的测试数量并验证该数量是否实际运行),您需要像 TAP(测试任何协议)这样的东西,它适用于任何编程语言:
\n1..4 <== see here\nok 1 - Input file opened\nnot ok 2 - First line of the input valid\nok 3 - Read the rest of the file\nnot ok 4 - Summarized correctly # TODO Not written yet\nRun Code Online (Sandbox Code Playgroud)\nTAP 实际上非常好用且简单。我记得有一个 Go 端口,tap-go,但它现在被标记为已存档。
\n| 归档时间: |
|
| 查看次数: |
4662 次 |
| 最近记录: |