从命令行跳过pytest中的导入模块

时间:2019-02-13 19:07:18

标签: python import pytest

pytest的文档建议您跳过某些导入:

https://docs.pytest.org/en/latest/skipping.html#skipping-on-a-missing-import-dependency

我们试图在pytest下运行pylint,并且在某些情况下,由于系统依赖性,导入tensorflow会导致问题。文档显示了一种跳过代码导入的方法,是否可以从pytest的命令行跳过这样的导入?

1 个答案:

答案 0 :(得分:1)

pytest中没有这样的功能,因此您应该直接在代码中进行此操作(通常在conftest.py中)。

直接在命令行中执行相同操作的变通方法是:

python -c "import pytest; pytest.importorskip('tensorflow'); pytest.main()"

更好的方法是使用现有的hooks之一向pytest添加您自己的命令行选项,以便可以像--no-tensorflow之类的东西清楚地指定它。