在 Go 中使用本地文件进行测试
当测试依赖于本地文件的功能时,Go 中的最佳实践是使用专用文件夹命名为测试数据。 go 工具会忽略此文件夹,如文档中所述(输入 go help 包)。
使用测试数据的优点:
testdata 的结构文件夹:
在与 Go 包相同的目录中创建一个名为 testdata 的文件夹。然后,您可以将任何测试文件放入此文件夹中。
从 testdata 读取文件:
要从 testdata 文件夹读取文件,请使用以下代码:
<code class="go">package mypackage import ( "io/ioutil" "os" "path/filepath" ) func readLocalFile(filename string) ([]byte, error) { pwd, err := os.Getwd() if err != nil { return nil, err } path := filepath.Join(pwd, "testdata", filename) return ioutil.ReadFile(path) }</code>
将 filename 替换为您要读取的文件的名称。
替代方法:
虽然推荐使用 testdata 方法,但您可以还可以考虑其他选项:
以上是如何在 Go 测试中最好地处理本地文件?的详细内容。更多信息请关注PHP中文网其他相关文章!