Python Nose XUNIT 报告文件为空



我在运行鼻子测试并在 Jenkins 中得到结果时遇到问题。

该作业有一个如下所示的 shell 脚本:

. /var/lib/jenkins/envs/itravel/bin/activate
python api/manage.py syncdb --noinput
DJANGO_SETTINGS_MODULE=ci_settings nosetests --verbosity=0 --processes=1 --with-xunit --xunit-file=nosetests.xml
deactivate

测试套件的一部分是使用 django_nose 运行的。NoseTestSuiteRunner.

运行所有测试,并创建生成的 nosetests.xml 文件,但似乎没有填充测试结果:

<?xml version="1.0" encoding="UTF-8"?><testsuite name="nosetests" tests="0" errors="0" failures="0" skip="0"></testsuite>

我注意到在import Error失败时,文件充满了一个错误,但除此之外,什么都没有......

知道吗?从测试方面有什么特别的事情要做吗?有什么属性要设置吗?

谢谢。

我所知,--processes选项与--with-xunit不兼容。当您要求 nosetests 使用进程插件运行时,测试将在指定数量的子进程中运行。xunit 插件不知道如何将结果收集到 xml 文件中。

只需删除--processes选项,您应该没问题。

自 2011 年以来,Nose 一直有一个未解决的 GitHub 问题。正如@sti所说,如果您不使用--processes,一切正常。对于其他人,请考虑改用 Ignas/nose_xunitmp:

pip install nose_xunitmp
nosetests --with-xunitmp
nosetests --xunitmp-file results.xml

相关内容

  • 没有找到相关文章

最新更新