我试图用pytest测试文件解析。我有一个看起来像这样为我的项目的目录树:如何正确整合用pytest进行文件解析的单元测试?
project
project/
cool_code.py
setup.py
setup.cfg
test/
test_read_files.py
test_files/
data_file1.txt
data_file2.txt
我的setup.py文件看起来是这样的:
from setuptools import setup
setup(
name = 'project',
description = 'The coolest project ever!',
setup_requires = ['pytest-runner'],
tests_require = ['pytest'],
)
我setup.cfg文件看起来是这样的:
[aliases]
test=pytest
我用pytest编写了几个单元测试来验证文件是否正确读取。当我从“test”目录中运行pytest时,它们工作正常。但是,如果我执行从我的项目目录下面的任何,测试失败,因为他们不能在test_files寻找数据文件:
>> py.test
>> python setup.py pytest
测试似乎是从其中执行pytest目录敏感。
如何从测试目录或项目根目录中调用pytest单元测试以发现“data_files”中的文件进行解析?
这取决于你怎么写你的setup.py所以你可以请你发布setup.py的内容。 – suvy
这个问题用我正在使用的setup.py文件设置进行了更新。 –
更新了答案,它工作吗? – suvy