想象一个简单的文件夹结构:
my_folder/
__init__.py
funcs.py
tests/
test_funcs.py
funcs.py:
def f():
return 2
__init__.py:
from funcs import f
test_funcs.py:
from funcs import f
def test_f():
assert f() == 2
这是文档中推荐的方法之一:https://pytest.readthedocs.io/en/reorganize-docs/new-docs/user/directory_structure.html
但是当我从my_folder
运行pytest时
tests/test_funcs.py:1: in <module>
from funcs import f
E ModuleNotFoundError: No module named 'funcs'
这很奇怪,因为我认为pytest
设置了它运行的路径,所以如果不手动处理它,这些类型的错误就不会出现。
文档也没有给出任何关于这方面的指示...他们只是在说:
通常您可以通过指向测试目录或模块来运行测试:
pytest test / test _appmodule.py#对于外部测试目录pytest src / test /test_appmodule.py#对于内联测试目录pytest src#在以下所有测试目录中运行测试pytest #运行当前目录下的所有测试
我遗漏了什么?
https://stackoverflow.com/questions/52747763
复制相似问题