PHPUnit无法找到GearmanClient

时间:2013-12-03 21:58:29

标签: php macos phpunit command-line-interface

我在OSX上本地运行phpunit进行了1次测试,看看我是否收到了来自Gearman的回复。我收到以下错误:

PHP Fatal error:  Class 'GearmanClient' not found

以下是代码:

class GearmanTest extends PHPUnit_Framework_TestCase {
    public function testGearmanClient() {
        $gmc = new GearmanClient();
        $gmc->addServer('localhost');
    }
}

奇怪的是,如果我不尝试通过phpunit运行它,它可以正常工作。叫我疯了,但他们不是简单的cli流程吗?我确实注意到找到的include_path存在差异,但是当我强制包含路径相同时,没有任何效果。

请帮忙。

1 个答案:

答案 0 :(得分:1)

如果无法找到课程GearmanClient(如您的示例中所述),那就是因为未安装扩展程序。

尝试运行

$ php -i | grep gearman

如果安装了扩展程序,则上面的命令会输出类似

的内容
Additional .ini files parsed => /usr/local/etc/php/5.6/conf.d/ext-gearman.ini,
gearman
gearman support => enabled
libgearman version => 1.1.12
e2 => feature/gearman-manager
_SERVER["e2"] => feature/gearman-manager

您可以在Stackoverflow上找到如何在系统上安装它的内容。

如果您使用的是OS X,您可能希望使用http://brew.sh来安装软件包,这里有一篇关于在OS X上使用Homebrew安装PHP的好文章:

安装PHP后,例如PHP5.6,它就像运行一样简单

$ brew install gearman