有谁知道如何在Mac OS X上安装PHPUnit(我正在使用XAMPP)。我尝试了以下命令,它说安装成功(没有错误)。现在,当我尝试在终端中运行phpunit命令时,出现错误,无法找到命令phpunit。另外,运行“哪个phpunit”什么都不返回。
我跑的命令:
$sudo /Applications/XAMPP/xamppfiles/bin/pear channel-discover pear.phpunit.de
$sudo /Applications/XAMPP/xamppfiles/bin/pear channel-discover pear.symfony-project.com
$sudo /Applications/XAMPP/xamppfiles/bin/pear channel-discover components.ez.no
$sudo /Applications/XAMPP/xamppfiles/bin/pear install -a phpunit/PHPUnit
感谢。
答案 0 :(得分:1)
通过XAMPP安装PHPunit几乎让我很生气,一个错误告诉我,我的xdebug版本是旧的安装PHPunit所需的Coverage库,三秒钟后另一个告诉我一切都很好但没有安装phpunit命令
我选择通过在系统级别(XAMPP之外)安装phpunit来绕过该问题。
cd /tmp
curl http://pear.php.net/go-pear.phar > go-pear.phar
sudo php -d detect_unicode=0 go-pear.phar
这应该安装梨(告诉你哪里,默认在你的家里)。
cd ~/pear/bin
sudo ./pear channel-discover pear.phpunit.de
sudo ./pear channel-discover pear.symfony-project.com
sudo ./pear channel-discover components.ez.no
sudo ./pear install -a phpunit/PHPUnit
./ phpunit现在应该给你一些东西(在我的情况下,它会显示某些导入未完成的内容。
Warning: require_once(File/Iterator/Autoload.php): failed to open stream: No such file or directory in ~/pear/share/pear/PHPUnit/Autoload.php on line 45
Fatal error: require_once(): Failed opening required 'File/Iterator/Autoload.php' (include_path='.:') in ~/pear/share/pear/PHPUnit/Autoload.php on line 45
如果您没有/etc/php.ini,请创建它:
sudo cp /etc/php.ini.default /etc/php.ini
然后编辑/etc/php.ini并设置正确的路径:
include_path = ".:/php/includes:/Users/YOURUSERNAME/pear/share/pear"
然后在你的pear bin目录中调用./phpunit应该可以工作......与Ubuntu上的一些aptitude和pear调用相比,它非常痛苦,但它可以让你在OSX上工作。您应该仍然可以使用XAMPP作为Web服务器,但请记住XAMPP使用其buildin PHP环境,phpunit将使用您的系统之一。
答案 1 :(得分:1)
AsTeR的方法对我有用,因为当时因为坚持旧的 PHP 5.3.1 当前的PHPUnit版本会抱怨,因为缺少函数 stream_resolve_include_path 。
所以我最终将解决方案与此答案一起使用:https://stackoverflow.com/a/8249291
答案 2 :(得分:0)
我在@ trent-scott的帮助下做了同样的错误。
Fatal error: require_once(): Failed opening required 'File/Iterator/Autoload.php' (include_path='.:')
您可以注意到有一个空的包含路径(include_path =':')..
转到php.ini文件。通过终端'php --ini'来做出这一点。
确保你在文件的某个地方有类似的东西(一定要替换用户名):
include_path=".:/Users/hfossli/pear/share/pear"
这应该足够了,但我出于某种原因得到了这个(一定要替换用户名):
include_path=".:/Applications/XAMPP/xamppfiles/lib/php/pear:/Applications/XAMPP/xamppfiles/lib/php/pear:/Users/hfossli/pear/share/pear"
答案 3 :(得分:0)
我资助了另一个适合我的临时解决方案。不要直接在Xampp应用程序中使用pear命令,而是尝试使用pear可执行文件的完整路径,例如:/ Applications / XAMPP / xamppfiles / bin / pear
希望它有所帮助。