用于验证 json 文件内容的函数的 Pytest
Pytest for my function that validates json file contents
我有一个 Python 函数,可以创建内容并将内容附加到磁盘上的 json 文件。想用pytest开发测试用例。
Json 片段:
{
"pictures": [
"/home/mywork/pictures/pictures.zip",
"/home/mywork/pictures/record.json"
],
"lab_results": [
"/home/mywork/lab_results/lab_results.zip",
"/home/mywork/lab_results/private/results.json"
]
....
}
我应该如何断言磁盘上文件的可用性?我的意思是,json values
是磁盘上的物理文件,如果文件丢失或不同 pattern/format.
,我想抛出错误
是否有推荐的方法或来自 pytest 的任何预可用模块?
最佳做法是在不接触文件系统的情况下模拟文件系统调用和运行您的测试。
如果你绝对需要 运行 针对文件系统进行测试,pytest 提供了 tmp_path
夹具来提供一个唯一的临时目录供你在测试期间使用。
然后您将遵循设置测试环境的基本测试实践(在本例中将相关文件添加到目录),触发行为(读取或写入目录中的文件),然后断言事情如预期发生。
我有一个 Python 函数,可以创建内容并将内容附加到磁盘上的 json 文件。想用pytest开发测试用例。
Json 片段:
{
"pictures": [
"/home/mywork/pictures/pictures.zip",
"/home/mywork/pictures/record.json"
],
"lab_results": [
"/home/mywork/lab_results/lab_results.zip",
"/home/mywork/lab_results/private/results.json"
]
....
}
我应该如何断言磁盘上文件的可用性?我的意思是,json values
是磁盘上的物理文件,如果文件丢失或不同 pattern/format.
是否有推荐的方法或来自 pytest 的任何预可用模块?
最佳做法是在不接触文件系统的情况下模拟文件系统调用和运行您的测试。
如果你绝对需要 运行 针对文件系统进行测试,pytest 提供了 tmp_path
夹具来提供一个唯一的临时目录供你在测试期间使用。
然后您将遵循设置测试环境的基本测试实践(在本例中将相关文件添加到目录),触发行为(读取或写入目录中的文件),然后断言事情如预期发生。