【发布时间】:2019-09-16 14:01:04
【问题描述】:
我有 config.py 模块,它加载连接到 MongoDB 所需的环境变量。 当我尝试在 vscode 中运行测试发现时,pytest 没有找到这些环境变量。 在测试文件中,我使用了导入配置模块的模块中的一些方法,因此读取这些环境变量的代码始终运行。
环境变量在我的 .bashrc 文件中定义。
如果我从终端运行,单独 Pytest 可以使用这些环境变量运行测试
python /home/orch/.vscode/extensions/ms-python.python-2019.9.34911/pythonFiles/testing_tools/run_adapter.py 发现 pytest -- -s --cache-clear 测试
这是激活测试发现工具时 vscode 运行的命令
我希望 vs 代码找到测试
输出如下错误:
tests/test_db.py:5: in <module>
from src.core.db import MongoHandler
src/core/db.py:5: in <module>
from src.core.loggers import gcl_log_event
src/core/loggers.py:8: in <module>
from configuration import config
configuration/config.py:22: in <module>
user_name = os.environ['EVO_DB_USER_NAME']
../../.local/share/virtualenvs/evolve-sjbSOQds/lib/python3.7/os.py:678: in __getitem__
raise KeyError(key) from None
E KeyError: 'EVO_DB_USER_NAME'
【问题讨论】:
-
设置完env vars后你有没有重新打开vscode?span>
-
是的,我相信问题比这复杂得多:(
标签: python-3.x visual-studio-code pytest