我有 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'
Run Code Online (Sandbox Code Playgroud) 我正在使用 minio 创建一个类似于对象存储服务器的 s3,并且我想在我的 ci cd 过程中针对该服务器测试一些代码。
使用 Github 操作,我尝试在工作流文件中添加 minio 作为服务,但由于 minio 需要一个命令和一些参数,我实际上无法使用这种机制运行它。
这是我的 ci.yml 中相关配置的一部分:
minio-container:
runs-on: ubuntu-latest
container: python:3.8.2
services:
minio:
image: minio/minio:latest
ports:
- 9000:9000
env:
MINIO_ACCESS_KEY: XXXX
MINIO_SECRET_KEY: XXXXX
Run Code Online (Sandbox Code Playgroud)
我读了一点,发现在幕后 github 运行,docker crate service [OPTIONS] IMAGE_NAME但我也需要能够运行docker create service [OPTIONS] IMAGE_NAME COMMAND [ARGS]
如果这还没有实现,我可以尝试哪些其他选项?
谢谢,
或者