You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PyCharm中运行pytest测试时查看全部运行时警告?

解决PyCharm中pytest仅显示警告数量不展示具体内容的问题

你提到命令行运行pytest也得到相同结果,说明问题根源不在PyCharm,而是pytest的警告过滤规则或配置导致的。试试以下几个方案:

  • 检查并修改pytest配置文件
    项目根目录下的pytest.ini、tox.ini或setup.cfg文件里,可能存在filterwarnings配置项屏蔽了大量警告。比如如果有类似:

    [pytest]
    filterwarnings =
        ignore::DeprecationWarning
        ignore::UserWarning
    

    这种配置会直接忽略对应类型的警告,只统计数量。可以把filterwarnings改成default,或者注释掉这些ignore规则:

    [pytest]
    filterwarnings =
        default
    

    这样会恢复默认的警告显示行为。

  • 用正确的pytest参数强制显示所有警告
    在PyCharm的运行/调试配置中,将附加参数设置为:

    -W default --warnings=always
    

    -W default会重置警告过滤规则为默认,--warnings=always会强制显示所有警告,不受配置文件设置影响。如果想精简输出,还可以加上--no-header --no-summary避免多余的表头和摘要,聚焦警告内容。

  • 排查代码层面的警告过滤
    有些测试代码或依赖库可能通过warnings.filterwarnings()主动忽略了警告。可以在测试入口文件(比如conftest.py)最顶部添加以下代码,强制开启所有警告:

    import warnings
    # 取消所有警告过滤,强制显示
    warnings.simplefilter("always")
    
  • 验证命令行参数是否生效
    先在命令行运行pytest -W default --warnings=always,确认能看到所有警告内容后,再把相同参数复制到PyCharm的运行配置里,确保参数配置正确。

修改完配置或参数后,重启PyCharm的运行配置再执行测试,应该就能看到完整的警告内容了。

内容的提问来源于stack exchange,提问作者Frank Tap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 10:05:15