在OSX上设置PHPUnit

虽然我确信其他人最终还是弄清楚了这一点,但是我一直在关注着各种文件,并且一直在困难的时候。

http://www.phpunit.de/manual/current/en/installation.html

使听起来很容易。 然而取决于你的设置,你可能会掉下一个兔子洞。

PEAR例如必须是高于1.8.1的版本。 我当时有1.8.0,所以我去了解如何更新PEAR

PEAR upgrade-all 

给出一个错误。 没有访问权限

 sudo PEAR upgrade-all 

工作,但升级用户“sudo”拥有的PEAR安装(而不是您的主要帐户…或类似的东西,简短的版本是5,它显然不工作)

 cd ~ pico .bash_profile 

 export PATH=/usr/local/bin:$PATH 

当你键入PEAR时,给你正确的PEAR,你终于准备好安装PHPUnit指令的第1步。

 pear channel-discover pear.phpunit.de 

错误。 您无权访问/ usr / local / temp

 sudo chmod 777 /usr/local/temp 

错误。 您无权访问/usr/local/temp/channel.xml

 sudo chmod 777 /usr/local/temp/channel.xml pear channel-discover pear.phpunit.de 

错误。

 Registry directory is not writeable by the current user 

但我在MAC上!

 /sigh /facepalm /tears 

我实际上在我的机器上有一个“工作副本”的phpunit。 (YAY!)奇怪的问题是,它只有当我从一个特定的文件夹中键入phpunit时工作

 cd /usr/local/PEAR phpunit 

^^作品

 cd ~ phpunit 

^^退货

 Warning: require_once(PHPUnit/Util/Filter.php): failed to open stream: No such file or directory in /usr/local/bin/phpunit on line 46 Fatal error: require_once(): Failed opening required 'PHPUnit/Util/Filter.php' (include_path='.:/usr/lib/php') in /usr/local/bin/phpunit on line 46 

如此接近,但迄今为止…我想知道如果有人有一些投入让这个家伙正常工作?

通过terminal安装:

 curl https://phar.phpunit.de/phpunit.phar -L -o phpunit.phar chmod +x phpunit.phar mv phpunit.phar /usr/local/bin/phpunit 

呃….好吧…我想我现在可能已经开始工作了。

答案出现在PHPUnit文档中。 http://www.phpunit.de/manual/3.4/en/installation.html

 After the installation you can find the PHPUnit source files inside your local PEAR directory; the path is usually /usr/lib/php/PHPUnit. 

我运行的PEAR的Mac版本安装了PHPUnit,如果我运行了“SUDO”用户下列出的所有命令,例如:

 sudo pear channel-discover pear.phpunit.de sudo pear channel-discover pear.symfony-project.com sudo pear upgrade-all 

在这一点上,所有的文件都下载到/ usr / local /梨,但命令

 phpunit 

正在寻找包含来自/ usr / lib / php / PHPUnit的文件解决scheme? 从中复制PHPUnit文件夹

 cp /usr/lib/pear/PHPUnit /usr/lib/php 

要么

做一个符号链接

 cd /usr/lib/php ln -s /usr/lib/pear/PHPUnit PHPUnit 

我见过很多有类似问题的人,但是这个特定的解决scheme还没有出现在我看到的任何线程中。 希望对你有用:) – 亚历克斯

通过自制软件(只有当你通过自制软件安装了php):

 brew tap josegonzalez/php brew install phpunit 

我们可以使用Homebrew来安装它

 $ brew install phpunit 

您可以尝试使用Composer进行安装。 通过这种方式,您可以隔离当前项目的PHPUnit版本,从而避免在为不同项目使用单个系统范围设置时可能出现的问题。 正如PHPUnit文档所述( http://phpunit.de/manual/current/en/installation.html#installation.composer ),安装非常简单。

将依赖关系添加到您的composer.json文件中:

  { "require-dev": { "phpunit/phpunit": "4.0.*" } } 

然后更新依赖关系:

 composer update 

而PHPUnit已经准备好运行:

 ./vendor/bin/phpunit 

请记住,如果更改作曲者安装path(默认为“供应商”),请调整此path。

安装PHPUnit

 curl https://phar.phpunit.de/phpunit.phar -o phpunit.phar chmod +x phpunit.phar mv phpunit.phar /usr/local/bin/phpunit 

或者如果您已经安装了PHPUnit,那么只需尝试这一行来通过terminal来更新PHPUnit

  phpunit --self-update 

这将更新您的phpunit.phar文件。

https://phar.phpunit.de/phpunit.phar手动下载phpunit,然后在terminal步骤1中下载文件夹。chmod + x phpunit.phar步骤2. sudo mv phpunit.phar / usr / local / bin / phpunit