【问题标题】:getMock() undefined in PHPUnit tests with HHVM使用 HHVM 在 PHPUnit 测试中未定义 getMock()
【发布时间】:2016-07-06 12:05:55
【问题描述】:

我们昨天将 PHPUnit 更新到了最新版本,并将所有调用从 getMock() 重命名为 createMock()

我们的单元测试在 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 的错误?

【问题讨论】:

标签: php phpunit hhvm


【解决方案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 作为开发依赖项。

【讨论】:

猜你喜欢
  • 2019-03-31
  • 2016-08-10
  • 2014-09-11
  • 2017-08-03
  • 1970-01-01
  • 2016-04-24
  • 1970-01-01
  • 2010-11-18
  • 1970-01-01
相关资源
最近更新 更多