为VSCode python测试设置env-vars



通常使用VSCode的launch.json来设置运行和调试python的环境变量。然而,如果我使用VSCode的";测试";对于python测试,pytest或unittest脚本是否有办法使用launch.json中的一个配置来设置env-vars?如果没有,为VSCode的测试设置它们的最佳方式是什么?

PyTestpytest-env,但我希望VSCode能有一种一致的方式来处理带有python的env-var,这种方式不需要配置重复或将两者联系起来的定制代码。

当我使用pytest时,我最终在pytest.ini中定义了env-var,正如这里所建议的那样,但与之前一样,它使用launch.json创建了重复

我认为,您希望使用您的env变量作为pytest全局变量。您可以在conftest.py:中分配它们

def pytest_configure(config):
pytest.var = os.environ.get("FOO")

这种方法的优点是,您不仅可以在测试用例中使用这个变量,还可以将它传递给decorator和其他fixture:

@pytest.mark.skipif(pytest.var == "foo")
def test_000():
...

最新更新