pytest - ModuleNotFoundError - python 3.6.4

时间:2018-04-08 22:13:36

标签: python python-3.x pytest python-unittest sys

我有一个这个布局的项目:

├── MANIFEST.in
├── README.md
├── __init__.py
├── company
│   ├── __init__.py
│   ├── api
│   │   ├── __init__.py
│   │   ├── auth.py
│   │   ├── debug.py
│   │   ├── exceptions.py
│   │   ├── reporting.py
│   │   ├── rest.py
│   │   ├── soap.py
│   │   └── utils.py
│   ├── jinjaEnvironment.py
│   ├── sql
│   │   ├── __init__.py
│   │   ├── connection.py
│   │   └── sql_helper.py
│   └── templates
│       ├── __init__.py
│       ├── getUser.xml
│       ├── rest_write_custom_field.xml
│       └── setUser.xml
├── company.egg-info
├── requirements.txt
├── setup.py
└── tests
    ├── __init__.py
    └── test_api.py

使用python -m unittest -v(从项目根文件夹启动),测试运行正常。 我试图安装并使用pytest,到目前为止没有成功。从nwo开始,我试过了:

  • pytest
  • python -m pytest -v

但是我得到了同样的错误:

ImportError while importing test module '/Users/my.user/PycharmProjects/company/tests/test_api.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
tests/test_api.py:22: in <module>
    from company.api import auth, reporting, exceptions as api_exceptions
E   ModuleNotFoundError: No module named 'company.api'

我还试图用:

修改sys.path
import sys

print(os.path.abspath("."))
sys.path.insert(0, os.path.abspath("."))
print(sys.path)

但我得到了相同的结果。 对此有何帮助?

我在OS X 10.13.4上使用python 3.6.4

0 个答案:

没有答案