【问题标题】:Using django-nose and unittest-xml-reporting together - unit testing一起使用 django-nose 和 unittest-xml-reporting - 单元测试
【发布时间】:2016-04-04 12:41:26
【问题描述】:

我们有一个 django 项目,它使用unittest-xml-reporting 向竹子提供有关测试结果的 xml 文件。我们想集成django-nose 来测试代码覆盖率。但是由于 django 测试需要一个 TEST_RUNNER 类,我不知道如何并行使用这两个功能(实际上不重叠):

用于unittest-xml-reporting

TEST_RUNNER = 'xmlrunner.extra.djangotestrunner.XMLTestRunner'

对于 django-nose

TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'

我试图进入代码,但编写某种 hack 将类连接在一起似乎很麻烦。还有什么其他选择?

【问题讨论】:

    标签: django unit-testing junit code-coverage django-nose


    【解决方案1】:

    为什么不只使用 django-nose 来生成 xjunit XML?只需添加以下几行:

    TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
    
    NOSE_ARGS = [
        '--verbosity=2',  # verbose output
        '--with-xunit',  # enable XUnit plugin
        '--xunit-file=xunittest.xml',  # the XUnit report file
    ]
    

    这样您就不必对两个 Runner 进行子类化,这是唯一的方法:创建一个自定义 Runner 并合并这两个可能难以实现的目标。

    【讨论】:

    • 实际上我最终使用了提供 junitxml 和代码覆盖率的 py.test。非常感谢您的回答。
    • django-nose 也集成了覆盖,但是 py.test 是一个替代方案
    猜你喜欢
    • 2013-03-13
    • 2012-11-11
    • 1970-01-01
    • 2015-06-28
    • 1970-01-01
    • 2013-09-20
    • 2014-02-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多