【问题标题】:XML output including setup_module and teardown_moduleXML 输出,包括 setup_module 和 teardown_module
【发布时间】:2014-03-26 21:30:31
【问题描述】:

我正在尝试记录我在 xml 中的 python unittest 的所有输出。 我为测试用例、分类和模块设置了设置和拆解。所有输出都打印到控制台,但只有测试用例 setUp 和 tearDown 显示在 xml 中。

命令运行:

nodetests -s ATestModule --with-xunit --xunit-file=a.xml

特定测试用例的输出是:

<testcase classname="ATestModule.FirstTestCase" name="testOne" time="0.553">    
    <system-out><![CDATA[2014-02-24 17:51:30,560 - INFO - TestData]]>
    </system-out>
</testcase>

我将设置和拆卸模块定义为:

def setup_module():
  print(__name__ + "Setup module")

def teardown_module():
  print(__name__ + "Tear down module")

我以http://pythontesting.net/framework/nose/nose-fixture-reference/ 为例。

这些没有出现在测试用例中,这是可以理解的,但我仍然希望它们出现在 xml 中的某个地方?是否有更适合我需要的设置或不同的跑步者?

谢谢!

【问题讨论】:

    标签: python xml unit-testing nosetests python-unittest


    【解决方案1】:

    这是我发现的。根据documentation,模块级设置和拆卸应命名为setUpModuletearDownModule。我已经尝试了一些测试,果然,当这些夹具函数被调用时,它们的输出不包含在输出 XML 文件中。

    同样,类级别的装置 setUpClasstearDownClass 也被调用,但不显示任何输出。这可能是设计使然,我不知道如何解决。

    更新

    我查看了nose 的源代码,果然没有固定装置的 XML 输出。

    【讨论】:

    • 谢谢 Hai,我使用的是noserunner,它也允许模块的其他命名。如果这是设计使然,您不希望选项记录单元测试中发生的所有内容,即模块和类设置/拆卸,这似乎很奇怪。
    猜你喜欢
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    • 2017-08-05
    • 2013-02-07
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 1970-01-01
    相关资源
    最近更新 更多