我在 go 中编写了一个单元测试,同一文件的 init 方法在项目根目录中打开一个文件。我遇到的问题是,当我运行测试时,测试包是根目录,不包含所需的文件。如何告诉测试函数查看该文件而不在测试文件的目录中创建重复文件?
文件结构:
main.go
|+-helpers
|+-data.go
|+-data_test.go
required_file.txt
Run Code Online (Sandbox Code Playgroud)
测试命令:
go test github.com/testproj/helpers
Run Code Online (Sandbox Code Playgroud)
data.go 中的代码:
func init() {
file, err := os.Open("required_file.txt")
if err != nil {
log.Fatal(err) <-- required_file.txt not found
}
}
Run Code Online (Sandbox Code Playgroud)