使用调用者指定 Go 测试的工作目录
为 Go 应用程序开发测试时,让测试访问必要的配置至关重要位于工作目录中特定目录中的文件。默认情况下,二进制文件会在工作目录下的conf/*.conf路径下查找这些文件。
如果直接运行go test命令找不到配置文件,可以采用替代方法。通过利用 Caller 函数,我们可以建立当前测试源文件的路径。
这是演示此技术的代码片段:
<code class="go">package sample import ( "testing" "runtime" "fmt" ) func TestGetFilename(t *testing.T) { _, filename, _, _ := runtime.Caller(0) t.Logf("Current test filename: %s", filename) }</code>
在此示例中,我们调用 Caller 函数检索有关测试函数的信息,包括其文件名。通过记录文件名,我们可以验证测试源文件的位置,并使用此信息来相应地设置工作目录。这样,测试就可以成功访问所需的配置文件。
以上是如何使用Go的Caller函数动态设置测试工作目录?的详细内容。更多信息请关注PHP中文网其他相关文章!