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

如何让PyCharm中pytest触发的异常触发断点?

解决PyCharm中pytest触发异常断点的问题

要让pytest在测试失败时触发PyCharm的异常断点,核心是让pytest停止自动捕获异常,让PyCharm的调试器接手处理异常。这里有几个实用的设置方法:

1. 修改PyCharm的pytest运行配置

  • 打开Run/Debug Configurations(可通过右上角运行按钮旁的下拉菜单进入)
  • 找到你正在使用的pytest配置项,切换到Configuration标签页
  • 勾选Do not catch exceptions选项
  • 还可以在Additional arguments里添加 -x 参数,这样第一个测试失败时就会立即停止,方便聚焦调试当前问题

2. 直接调试单个测试用例

如果只需要调试特定的测试方法或类,不用折腾全局配置:

  • 在测试代码的方法/类左侧,点击虫子形状的调试图标,直接以调试模式运行该测试
  • 这种方式下,PyCharm会自动让pytest放弃异常捕获,一旦测试抛出异常,立刻触发断点

3. 通过pytest配置文件全局设置

如果想让所有pytest运行都默认触发异常断点:

  • 在项目根目录创建或编辑pytest.ini文件,添加以下内容:
[pytest]
addopts = --no-capture -x
  • --no-capture 禁用pytest的输出捕获,让异常直接暴露给调试器;-x 让测试在第一次失败后停止,避免后续测试干扰调试

设置完成后,用PyCharm调试模式运行pytest,测试抛出异常时就会像运行普通Python脚本一样触发断点,直接定位到异常发生的代码位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 06:03:11