我正在用 Go 为我的应用程序编写一些单元测试。但是测试失败了,因为它找不到配置文件。通常,二进制文件会在路径 conf/*.conf
下的工作目录中查找配置文件。
我认为浏览到包含 conf/
的目录并运行 go test
可以解决问题,但它仍然报告文件系统找不到指定的路径。
我如何告诉 go test
使用某个目录作为工作目录,以便实际执行测试?
原文由 Jesse Brands 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在用 Go 为我的应用程序编写一些单元测试。但是测试失败了,因为它找不到配置文件。通常,二进制文件会在路径 conf/*.conf
下的工作目录中查找配置文件。
我认为浏览到包含 conf/
的目录并运行 go test
可以解决问题,但它仍然报告文件系统找不到指定的路径。
我如何告诉 go test
使用某个目录作为工作目录,以便实际执行测试?
原文由 Jesse Brands 发布,翻译遵循 CC BY-SA 4.0 许可协议
7 回答5.3k 阅读
6 回答6.9k 阅读✓ 已解决
4 回答2.3k 阅读
1 回答2k 阅读✓ 已解决
1 回答3.4k 阅读
2 回答877 阅读✓ 已解决
2 回答2.2k 阅读
您可以使用 Caller 获取当前测试源文件的路径,如下所示: