如何在 Pytest 执行期间使用标准输出进行调试

How to debug using stdout during Pytest execution

我正在尝试调试测试的功能(在 pytest 上运行) 我正在设置调试点并停在那里(使用 Pycharm) 但是,我无法有效地调试代码,因为我的 stdout 和 stderr 被重定向了,因为这是一个 pytest。我试过 restoring stdout from sys.__stdout__sys.stdout = sys.__stdout__ 没有用。

有什么方法可以恢复标准输出以进行调试吗?

这不是 的副本,在我的情况下捕获 std 并没有失败,它是在无法真正帮助我调试的位置捕获的...

在 运行 pytest 时使用 -s 选项。如此处所示:https://docs.pytest.org/en/latest/capture.html.
-s 选项禁用对标准输出的所有捕获。