詹金斯没有完成PHPUnit套件


Jenkins not finishing PHPUnit suite

我有一台Jenkins服务器(在Windows上),用于测试运行良好的Symfony应用程序。我最近不得不将PHP从5.6降级到5.5,以匹配我们的部署环境(不知道为什么一开始就安装5.6)。

这样做之后,我的PHPUnit测试套件就不再完成了。PHPUnit是通过Phing exec任务运行的。如果我从命令行运行相同的任务,测试套件就会完成。如果我运行phpunit命令(bin/phpunit -c phpunit.xml),测试套件就完成了。这让我相信问题出在Jenkins身上,在PHP降级之前,它一直运行良好。

所有其他任务运行良好(phpcsphpcpd等)。它的只是PHPUnit,并且仅在Jekins构建期间。套件只是停止执行(我无法显示任何错误),Phing调用下一个任务。构建甚至没有被标记为失败,因为PHPUnit没有响应——它失败是因为当Jenkins试图处理PHPUnit测试结果时,没有响应。

关于我可能缺少什么或如何显示错误,有什么建议吗?

我不确定phpunit中内置的任务,但如果您使用exec任务,您可以捕获(稍后回显)命令的输出,并且在失败时退出构建:

<exec 
    command="/usr/local/php56/bin/php vendor/phpunit/phpunit/phpunit"
    checkreturn="true" 
    outputProperty="phpunitOut" />
<echo msg="PHPUnit Result: ${phpunitOut}" />