当前位置: 首页 > 知识库问答 >
问题:

pytest打印语句仅在quit()之前发出时有效。[重复]

贾俊喆
2023-03-14

我有一个pytest类,看起来如下:

class TestModule:

    def test_print(self):
        print("test")

此测试只通过,不打印任何内容。

    def test_print(self):
        print("test")
        quit()

这会打印测试,然后引发。这有什么原因吗?如何在pytest中打印到标准输出?

共有1个答案

陶泳
2023-03-14

打印语句显示运行时是否添加-s标志

 类似资料:
  • 我正在用pytests运行一些测试。这些测试有

  • 问题内容: 最近我一直在用Python编写很多代码。而且我一直在使用以前从未使用过的数据,使用以前从未见过的公式来处理大型文件。所有这些使我写了很多打印语句来验证是否一切正常,并确定故障点。但是,通常,输出太多信息不是一个好习惯。仅当我要调试时才使用打印语句,而当我不希望打印它们时如何跳过它们? 问题答案: 该模块具有您想要的一切。乍一看似乎有些多余,但只使用您需要的零件。我推荐使用切换日志级别和

  • 问题内容: 我有一个python脚本test.py: 在linux命令行上执行 返回: 然后执行 哪个返回 如何重定向输出使os.system调用在print语句之前打印? 问题答案: 当您输出到管道时,Python缓冲写入的输出,并在刷新,溢出,关闭后(程序退出时)输出。虽然它将缓冲打印调用,但系统调用输出将直接输出到stdout中,并且其输出将不会被缓冲。这就是为什么您会看到这样的优先级。为了

  • 问题内容: 为什么Python在第9行的简单语句中给我一个语法错误? Python的版本是: 问题答案: 在Python 3中,print是一个函数,您需要像这样调用它。

  • 问题内容: 在Java中,我注意到有时在我的代码中,语句先显示在语句之前,尽管后者先出现在语句之前。为什么?我很好奇。 问题答案: 通常,它是缓冲的输出流,因此在将文本刷新到目标位置之前会对其进行累积。由于可以最大程度地减少必须进行的昂贵系统调用的次数,因此可以大大提高打印大量文本的应用程序的性能。但是,这意味着文本并不总是立即显示,并且可能比书写的要晚得多。 另一方面,通常不缓冲,因为需要立即打

  • 问题内容: 我想获取一个输出,这是我的代码: 如何获得打印输出的内容?我如何得到类似的东西: 问候和感谢。 问题答案: 我和Frédéric有着相同的想法,但是我写了一个上下文管理器来处理替换stdout: