我第一次尝试pytest
。如何抑制发布有关我的代码所依赖的其他人代码的警告而又不抑制有关我自己的代码的警告?
现在我在pytest.ini
中有此文件,因此我不必看到pytest警告我正在使用的jsonschema
程序包已过时。
[pytest]
filterwarnings =
ignore::DeprecationWarning
但是现在,如果我在自己的代码中编写任何会引发弃用警告的内容,我都会错过它。
答案 0 :(得分:4)
pytest-warning的语法为action:message:category:module:lineno
。您可以使用此配置仅忽略jsonschema:
[pytest]
filterwarnings =
ignore::DeprecationWarning:jsonschema
您也可以在这些字段中使用正则表达式。如果要排除除您以外的所有警告,则:
[pytest]
filterwarnings =
ignore::DeprecationWarning:!yourtestmodule
Pytest使用与python相同的filterwarning。您可以在此处了解有关python警告的更多信息:https://docs.python.org/3/library/warnings.html#warning-filter
来源:https://github.com/fschulze/pytest-warnings/blob/master/pytest_warnings/init.py#L18