35

Cannot find PHPUnit in include path是我尝试在 phpstorm 中运行代码时收到的错误消息。

在 PHP 设置中,我的 PHP 级别语言是5.4 (traits, short array syntax, etc.),解释器Name(5.4.7)Name用户定义的。

当我尝试运行代码时出现错误,确切的消息是这样的:

C:\xampp2\php\php.exe C:\Users\DELL\AppData\Local\Temp\ide-phpunit.php --no-configuration

C:\xampp2\htdocs\ft-网站

测试于下午 2:34 开始...

进程以退出代码 1 结束

在包含路径中找不到 PHPUnit (.;C:\xampp2\php\PEAR)`

4

7 回答 7

58

我自己也遇到了这个问题。

我不确定为什么它无法在包含路径中找到 PHPUnit(尽管它那里,尽管都是小写的)。

我通过更改我的 IntelliJ Preferences for PHPUnit(在 下PHP --> PHPUnit)解决了这个问题。我将PHPUnit library设置更改为Use custom loader然后指定phpunit可执行文件的路径。在我的 Mac 上,那是/usr/local/Cellar/php54/5.4.26/bin/phpunit.

更新:

我刚刚发现pear现在将 PHPUnit 安装为phar命名的phpunit. 它之前安装了 PHPUnit 源代码,这对于 PHPStorm 中的参考和代码完成非常有用。我认为这就是 PHPStorm 不再适用的原因,因为它需要一个 php 可执行文件而不是一个 php 存档。

所以,我不再使用pear安装 PHPUnit,而是使用composer。这会将 PHPUnit 直接捆绑为我的项目的依赖项,这使得它比系统依赖项更具可移植性。您需要vendor/phpunit/phpunit在 PHPStorm 首选项中添加 PHP 包含路径。这将有两个目的:

  1. PHPStormphpunit现在可以找到可执行文件
  2. PHPStormPHPUnit现在将索引所有类,因此您将获得自动完成。耶!

为此,请转到 PhpStorm 设置中的语言和框架。如果你点击 PHP,在右边你有你的包含路径

于 2014-03-25T20:11:15.103 回答
24

通过composer添加PHPUnit后我遇到了这个问题。

我通过选择use custom autoloaderin解决了这个问题Settings -> Languages and Frameworks -> PHP -> PHPUnit,然后添加 /vendor/autoload.php 作为自定义自动加载器的位置。

于 2015-04-21T10:27:36.757 回答
4

除了 Ben 的回答,在 phpStorm 7.1.3 中,它通过在“使用自定义加载器”选项下指定 phpunit.phar 位置来工作,例如:

“脚本路径:/usr/share/php/phpunit.phar”

于 2014-08-01T09:16:25.680 回答
4

这是不使用 composer 并使用全局 phpunit 的方法。

  1. Phpunit 现在带有一个 phar 文件。我的路径是/usr/local/Cellar/phpunit/5.0.0/libexec/phpunit-5.0.0.phar

在此处输入图像描述

  1. PhpStorm Preferences -> phpunit.phar 的路径->选择 phpunit phar

在此处输入图像描述

  1. 就是这样,好东西。
于 2016-04-05T05:50:25.633 回答
2

我在使用 Vagrant 的 PHPStorm 2017 中遇到了同样的问题。首先转到Settings -> Languages and Frameworks -> PHP并添加远程解释器,然后Settings -> Languages and Frameworks -> PHP -> PHPUnit单击顶部的 + 并单击by Remote Interpreter。如果您使用的是 Composer 自动加载器,请输入您的自动加载器文件的完整 Vagrant 路径。

于 2017-05-24T21:30:56.177 回答
0

对于未来的读者,通过定义全局 phpunit.phar(不是作曲家)的路径来解决使用 PHPStorm + Vagrant + PHPUnit 时的相同问题

虽然测试成功运行,但我错过了代码完成。我已经确认它phpunit在我本地机器上的 PATH 中,并且为了确保我已经添加/usr/local/bin到 .php 文件中的 PHP 包含路径PHP Settings。仍然没有代码完成。

原因:PHPstorm 正在寻找phpunit.phar,而不仅仅是phpunit. 为了解决这个问题,我在本地机器上建立了一个符号链接phpunit.phar,指向phpunit

$ cd /usr/local/bin/
$ sudo ln -s phpunit phpunit.phar

然后我重新索引了项目,代码完成开始工作。

于 2018-06-19T14:13:05.453 回答
0

对于那些在 2020 年关注它的人,从 PHPStorm 2019 开始,它位于:

Languages and Frameworks->PHP->Test Frameworks
  1. 选择添加新库
  2. 选择“PHPUnit”
  3. 选择“phpunit.phar 的路径”单选
  4. 您将有一个自动选项来下载 PHPUnit
于 2020-12-24T23:05:18.167 回答