Testing Golang测试覆盖率与黑箱测试覆盖率

Testing Golang测试覆盖率与黑箱测试覆盖率,testing,go,Testing,Go,我的问题很简单,但答案仍然难以捉摸。假设我有一个包裹 package mypackage func DoTheThing() int { return 5 } 现在假设我有一个在mypackage\u测试包中使用的测试 现在我想知道包mypackage的代码覆盖率 应该是100%。我也试过了 $ go test -v -cover -coverpkg ./... ./... === RUN TestDoTheThing --- PASS: TestDoTheThing (0.00s)

我的问题很简单,但答案仍然难以捉摸。假设我有一个包裹

package mypackage

func DoTheThing() int {
  return 5
}
现在假设我有一个在mypackage\u测试包中使用的测试

现在我想知道包mypackage的代码覆盖率

应该是100%。我也试过了

$ go test -v -cover -coverpkg ./... ./...
=== RUN   TestDoTheThing
--- PASS: TestDoTheThing (0.00s)
PASS
coverage: 0.0% of statements in ./...
ok      /my/path/mypackage 0.002s  coverage: 0.0% of statements in ./...
我不可能在mypackage中包含测试,所以我需要知道在这个设置中mypackage的代码覆盖率


谢谢您的时间。

经过大量的键盘混搭,我发现这与我正在将我的项目目录简单链接到$GOPATH/src/有关

将项目复制到$GOPATH/src/mypackage并运行go test-cover正确返回100%的覆盖率

$ go test -cover
PASS
coverage: 0.0% of statements
ok      /my/path/mypackage 0.002s
$ go test -v -cover -coverpkg ./... ./...
=== RUN   TestDoTheThing
--- PASS: TestDoTheThing (0.00s)
PASS
coverage: 0.0% of statements in ./...
ok      /my/path/mypackage 0.002s  coverage: 0.0% of statements in ./...