gpt4 book ai didi

Python 毒素 : show stdout/prints on successful test run?

转载 作者:太空宇宙 更新时间:2023-11-03 20:20:11 24 4
gpt4 key购买 nike

有时我想打印一些语句,以确保单元测试运行良好(即使它通过了),但找不到启用它的选项。

如果测试失败,那么它会显示自定义打印作为输出,但如果通过,它会忽略打印或日志(我的意思是,它不会在终端输出上看到它们)。

我尝试使用详细信息,例如 -vvvv,但它仍然忽略我的打印。对于nose,有一个类似--nologcapture的选项。 tox中有类似的东西吗?

最佳答案

tox 本身只是一个通用的 venv 创建器、deps 安装程序和命令执行程序。它不进行输出捕获(除非您使用 --parallel )。所以它与 Nose 处于不同的抽象层次。 tox 可以运行您的测试或任何其他可通过命令行运行的内容。

就像您已经提到的 Nose 一样:根据您的测试运行程序,您可能需要停用输出捕获才能查看来自测试的打印结果。因此,如果您使用 pytest 例如,您可以使用 pytest -s 禁用所有输出捕获(另请参阅 docs )

您还可以在运行测试后打印一些内容,方法是在 tox.ini testenv 中添加类似的内容:

[testenv:test]
[...]
commands =
<some test command>
python -c 'print("All is fine."))'

关于Python 毒素 : show stdout/prints on successful test run?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58214869/

24 4 0