我们有一个django项目,该项目使用unittest xml报告向竹提供有关测试结果的xml文件。我们想集成django-nose来测试代码覆盖率。但由于django测试需要一个TEST_RUNNER
类,我不知道如何并行使用这两个功能(实际上并不重叠):
用于unittest xml报告
TEST_RUNNER = 'xmlrunner.extra.djangotestrunner.XMLTestRunner'
用于django-nose
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
我试着深入研究代码,但编写某种破解方法将类连接在一起似乎很麻烦。还有什么其他选择?
为什么不使用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并合并这两个很难实现的功能。