当您将模块引入项目时,如何在该模块中运行测试用例?
即。我做了:
go get my.repo.com/repo/mymodule
然后尝试在其中测试一些东西:
server> go test src/my.repo.com/repo/mymodule/my_test.go
# command-line-arguments
src/my.repo.com/repo/mymodule/article_test.go:4:2: cannot find package "mymodule" in any of:
我们是否应该单独检查我们的模块并进行测试?我无法解决该怎么做的问题。似乎当我go run
它知道如何找到我已经提取的模块时,但是当我go test
时,它无法找到它"在路上。
答案 0 :(得分:4)
go test
期望包,而不是相对于$GOPATH
的文件夹。
所以省略前导src/
和尾随文件名,它就可以了:
go test my.repo.com/repo/mymodule
如果当前目录是您要测试的包文件夹,您甚至可以省略它,例如
cd $GOPATH/src/my.repo.com/repo/mymodule
go test
有关参考,请参阅Command go / Test packages,同时运行
go help test