我的项目结构看起来很像这样:project/ api/ api.go config/ config.go config.toml tests/ api_test.go main.go因此,每当我初始化配置包时,我都会尝试使用相对路径读取配置文件:config/config.toml. 只要我运行我的程序,这就可以正常工作:go run main.go当我尝试运行测试时出现问题:go test project/tests. 我的配置包找不到文件,config/config.toml因为当前的工作目录不是project/第一种情况,而是project/tests/.有没有什么方便的方法可以从run和访问配置文件test?
1 回答
holdtom
TA贡献1805条经验 获得超10个赞
最后,我已经完成了更改配置文件加载方式的行为。之前,加载是在config
packed insideinit()
方法中完成的。
取而代之的是,我创建Load(path string)
了根据传递的path
变量执行配置文件加载的方法。
现在,我这样称呼它main.go
:
config.Load("config/")
从api_test.go
这样开始:
config.Load("../config/")
这不是一个很好的解决方案,但在这种情况下,用户不需要在运行测试时指定任何额外的参数。
- 1 回答
- 0 关注
- 205 浏览
添加回答
举报
0/150
提交
取消