【发布时间】:2021-11-27 15:59:59
【问题描述】:
我正在尝试将 VSCode 中的测试扩展与 Python 扩展一起使用。我使用 pytest 作为我的测试库。我的文件夹结构如下所示:
PACKAGENAME/
├─ PACKAGENAME/
│ ├─ __init__.py
│ ├─ main.py
├─ tests/
│ ├─ test_main.py
├─ requirements.txt
在test_main.py 文件中,我尝试导入包代码,以便对其进行测试:
from PACKAGENAME import *
在命令行的根目录PACKAGENAME 中,我可以使用命令python -m pytest,它可以正常运行测试。没有找到模块没有问题。但是,当我尝试使用 VSCode 测试选项卡时,发现了测试,但是这个错误:
=================================== ERRORS ====================================
_____________________ ERROR collecting tests/test_main.py _____________________
ImportError while importing test module 'd:\PATH\TO\PACKAGENAME\tests\test_main.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
C:\Users\USER\anaconda3\envs\uni\lib\importlib\__init__.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
tests\test_main.py:1: in <module>
from PACKAGENAME import *
E ModuleNotFoundError: No module named 'PACKAGENAME'
=========================== short test summary info ===========================
有什么方法可以在不使用命令行的情况下使其工作?
【问题讨论】:
-
您能否确定您在 VS Code 中选择的 Python 解释器与 VS Code 命令终端正在使用的解释器相同?
-
嗨,Jason,我可以确认正在使用的解释器与终端中的解释器肯定相同。它是运行
run_adapater.py发现脚本的脚本,可以从 Python 输出中看到。
标签: python testing visual-studio-code pytest