我的源文件树是这样的:
/src
/pkg
/foo
foo.go
foo_test.go
在foo.go里面:
package foo
func bar(n int) {
...
}
在foo_test.go里面:
package foo
func testBar(t *testing.T) {
bar(10)
...
}
我的问题是:
答案 0 :(得分:8)
1 - 语言规范说明如下:
一组共享相同PackageName的文件形成包的实现。实现可能要求包的所有源文件都位于同一目录中。
所以似乎没有要求命名文件/目录,但将形成包的所有文件放在一个目录中会更安全。
2 - 显然文件必须在某个目录中。我假设你的意思是“我应该把它放在src
的子目录中吗?”在我看来,根据上面的引言,如果您真的想要,可以直接在src
使用所有文件。
3 - 是的。
4 - 使用go test