gpt4 book ai didi

python - 如何在运行 pytest 测试时随意执行 ipdb.set_trace()

转载 作者:行者123 更新时间:2023-12-03 05:00:29 35 4
gpt4 key购买 nike

我正在使用 pytest 作为我的测试套件。在复杂的组件间测试中捕获错误时,我想放置 import ipdb; ipdb.set_trace() 在我的代码中间,以便我调试它。

但是,由于 pytest 捕获 sys.stdin/sys.stdout ipdb 失败。如何在使用 pytest 进行测试时使用 ipdb。

我对在失败后跳转到 pdb 或 ipdb 不感兴趣,而是在代码中的任何位置放置中断,并能够在失败发生之前在那里对其进行调试。

最佳答案

引发错误是因为 pytest 默认捕获输出。

您可以使用 -s 选项运行 pytest(关闭捕获输出)。例如:

py.test -s my_test.py

然后在my_test.py中:

import ipdb;
ipdb.set_trace()

关于python - 如何在运行 pytest 测试时随意执行 ipdb.set_trace(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16022915/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com