我查看了pytest网站上的文档,但没有找到使用“测试资源”的明确示例,例如在单元测试期间读取固定文件.类似于http://jlorenzen.blogspot.com/2007/06/proper-way-to-access-file-resources-in.html针对Java描述的内容.
例如,如果我在源代码管理中签入了yaml文件,那么编写从该文件加载的测试的正确方法是什么?我认为这可以归结为理解在python等效的类路径(PYTHONPATH?)上访问’资源文件’的正确方法.
解决方法:
我认为“资源文件”是你在python中给它的任何定义(在Java中,资源文件可以捆绑到具有普通java类的jar文件中,Java提供库函数来访问这些信息).
一个等效的解决方案可能是访问PYTHONPATH环境变量,将“资源文件”定义为相对路径,然后拖动PYTHONPATH查找它.这是一个例子:
pythonpath = os.env['PYTHONPATH']
file_relative_path = os.path.join('subdir', 'resourcefile') // e.g. subdir/resourcefile
for dir in pythonpath.split(os.pathsep):
resource_path = os.path.join(dir, file_relative_path)
if os.path.exists(resource_path):
return resource_path
此代码段返回PYTHONPATH上存在的第一个文件的完整路径.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。