-1

我是 golang 的新手,并试图了解如何使这种情况发挥作用?

这是我的结构 GOPATH 设置为 /Users/xyz/project

/Users/xyz/project/src/main.go // import calculator and call SUM with two integeres
/Users/xyz/project/src/main_test.go // test function
/Users/xyz/project/src/calculator/sum.go // SUM function (add two integers)

我有一个主要的 go 文件,它导入“计算器”,它是一个本地包。当我跑步时

go test -cover

它只提供 main 的覆盖范围,但不包括 main 导入的包“calculator”。我知道我可以在计算器内编写一个测试,这可以解决问题,但是有没有办法从 main 获取本地导入包的覆盖范围?

更大的上下文 - 我想这样做的原因是因为我有一个使用 gin 框架用 go 编写的微服务,我想将它作为服务启动并进行 http 调用并进一步查看覆盖范围(如组件测试) . 我可以通过编写启动服务的 main_test go 文件轻松启动它,但我没有得到导入包的覆盖范围。

4

1 回答 1

0

终于在这里找到了回应。看起来 go 有一个可以使用的测试二进制文件 https://www.elastic.co/blog/code-coverage-for-your-golang-system-tests

于 2018-06-17T02:37:50.573 回答