我的源文件树是这样的:
/src /pkg /foo foo.go foo_test.go
内部foo.go:
foo.go
package foo func bar(n int) { ... }
内部foo_test.go:
foo_test.go
package foo func testBar(t *testing.T) { bar(10) ... }
我的问题是:
foo
bar() is undefined
1-语言规范指出:
共享相同PackageName的一组文件构成了一个包的实现。一个实现可能要求包的所有源文件都驻留在同一目录中。
因此,似乎对文件/目录的命名没有要求,但是将构成一个包的所有文件放在一个目录中会更安全。
2-显然,该文件必须位于某个目录中。我假设您的意思是“ 我应该将其放在src? 的子目录中 吗?” 根据以上引用,在我看来,src如果您确实愿意,可以直接将所有文件都放入。
src
3-是的
4-使用 go test
go test