在使用HHVM的PHPUnit测试中未定义getMock()

时间:2016-07-06 12:05:55

标签: php phpunit hhvm

我们将PHPUnit更新为最新版本yersterday,并将createMock()的所有来电重命名为getMock()

我们的单元测试通过PHP 5.6和PHP 7.0但是在HHVM中失败,我们收到以下错误:

Fatal error: Call to undefined method Gomoob\Pushwoosh\Client\CURLClientTest::createMock() in /home/travis/build/gomoob/php-pushwoosh/src/test/php/Gomoob/Pushwoosh/Client/CURLClientTest.php on line 33

您可以在Travis上看到完整版本。

这很奇怪,因为这是在父类中声明的受保护方法的简单call(请参阅createMock()方法here)。

你知道为什么会失败吗?它可能是HHVM中的一个错误吗?

1 个答案:

答案 0 :(得分:1)

createMock()方法为introduced in PHPUnit 5.4.0。您在travis上使用旧版本 - 5.1.3。见https://travis-ci.org/gomoob/php-pushwoosh/jobs/142799864#L910

您的其他PHP版本use PHPUnit 5.4.6的构建。

这可能是你应该向travis报告的事情。你的另一个选择是通过composer安装phpunit作为dev依赖。

enter image description here