在conftest.py
中设置的全局环境参数global_env
通过pytest_configure
更新后,在测试用例中调用时却是空值,可能是因为以下几个原因:
-
作用域问题:请确保你在
conftest.py
中设置的global_env
是被正确的作用域捕获的。如果你在pytest_configure
函数内部设置了global_env
,它只在该函数的作用域内有效,无法在测试用例中访问到。 -
pytest配置问题:确认一下你运行测试时的pytest配置是否正确。确保你指定了正确的
conftest.py
文件路径,并且在运行测试时使用了正确的pytest选项。如果你的配置有误,可能会导致conftest.py
中的设置无法正确应用到测试用例中。 -
全局变量更新时机问题:全局变量
global_env
在pytest_configure
中更新,这意味着它会在pytest的配置阶段进行更新。然而,测试用例是在pytest的执行阶段被调用的。因此,在测试用例执行时,global_env
的最新值可能还没有被更新,仍然保持为空值。你可以尝试在测试用例中显式地重新获取或重新赋值global_env
的值。
如果以上方法都没有解决你的问题,请提供更多详细信息,例如conftest.py
和测试用例的示例代码,我将尽力帮助你解决。