在包含路径phpstorm中找不到PHPUnit

在包含路径phpstorm中找不到PHPUnit,php,phpstorm,Php,Phpstorm,无法在include path中找到PHPUnit是我尝试在phpstorm中运行代码时收到的错误消息 在PHP设置中,我的PHP级别语言是5.4(traits,short array syntax等),解释器是Name(5.4.7),其中Name是用户定义的 尝试运行代码时出现错误,确切消息如下: C:\xampp2\php\php.exe C:\Users\DELL\AppData\Local\Temp\ide-phpunit.php--无配置 C:\xampp2\htdocs\ft网站 测

无法在include path中找到PHPUnit
是我尝试在phpstorm中运行代码时收到的错误消息

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

尝试运行代码时出现错误,确切消息如下:

C:\xampp2\php\php.exe C:\Users\DELL\AppData\Local\Temp\ide-phpunit.php--无配置

C:\xampp2\htdocs\ft网站

测试于下午2:34开始

进程已完成,退出代码为1

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


我自己刚刚遇到这个问题

我不确定为什么它在include路径中找不到PHPUnit(尽管它在那里,尽管是小写的)

我通过更改PHPUnit的IntelliJ首选项(在
PHP-->PHPUnit
下)解决了这个问题。我将
PHPUnit库设置更改为
Use custom loader
,然后指定了
PHPUnit
可执行文件的路径。在我的mac电脑上,这是
/usr/local/ceral/php54/5.4.26/bin/phpunit

更新:

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

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

  • PHPStorm现在可以找到
    phpunit
    可执行文件
  • PHPStorm现在将索引所有
    PHPUnit
    类,因此您将获得自动完成。耶 要执行此操作,请转到PhpStorm设置中的语言和框架。
    如果单击PHP,除了Ben的答案之外,右边还有include路径,在phpStorm 7.1.3中,它通过在“使用自定义加载程序”选项下指定phpunit.phar位置来工作,例如:


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

    在通过composer添加phpunit后,我遇到了这个问题


    我通过在
    设置->语言和框架->PHP->PHPUnit
    中选择
    使用自定义自动加载程序
    ,然后添加/vendor/autoload.PHP作为自定义自动加载程序的位置来修复此问题。

    这是一种不使用composer并使用全局PHPUnit的方法

  • Phpunit现在附带了一个phar文件。我的路径是/usr/local/ceral/phpunit/5.0.0/libexec/phpunit-5.0.0.phar
  • phpForm首选项->指向phpunit.phar的路径->选择phpunit phar
  • 就这些,好东西
    2017年PHPStorm使用Vagrant时,我也遇到了同样的问题。首先进入
    Settings->Languages and Frameworks->PHP
    并添加远程解释器,然后进入
    Settings->Languages and Frameworks->PHP->PHPUnit
    单击顶部的+并单击远程解释器的
    。如果您使用的是Composer autoloader,请输入到autoloader文件的完整漫游路径。

    对于将来的读者,请通过定义到全局PHPUnit.phar的路径来修复使用PHPStorm+Vagrant+PHPUnit时的相同问题(非Composer)

    当测试成功运行时,我没有完成代码。我已经确认
    phpunit
    在我本地机器的路径中,为了确保,我已经在
    PHP设置中的PHP包含路径中添加了
    /usr/local/bin
    。仍然没有代码完成

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

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

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

    对于那些在2020年关注该项目的人,从PHPStorm 2019开始,这是:

    Languages and Frameworks->PHP->Test Frameworks
    
  • 选择添加新库
  • 选择“PHPUnit”
  • 选择“phpunit.phar路径”收音机
  • 您将自动选择下载PHPUnit

  • 您应该完全按照错误消息所述操作:将PHPUnit文件所在的路径添加到
    php.ini中的
    include_path
    config变量中。PHPUnit是否实际安装在
    C:\xampp2\php\PEAR
    中?最好的方法是使用PEAR在那里安装它,或者将您的PHP包含路径调整到另一个位置的PHPUnit安装。我有一个
    PHP\PEAR
    文件夹。我将继续使用PEAR进行安装,看看是否可以修复它。对不起,如何将
    vendor/phpunit/phpunit
    添加为PHP包含路径?我不清楚。对于drupal8,当使用Laravel Homestead时,路径将是
    /path/TO/DRUPAL/core/tests/bootstrap.php
    ,记住不要使用本地解释器,而是远程解释器。这是你第一次必须在语言和框架->PHP->PHPUnit中添加它,在左上角使用绿色加号,请在你的答案中添加更多描述。这将有助于提问者从你的答案中获得更多信息。不幸的是,这似乎不是一条相对的路径。不知道为什么每次我在做项目时都要纠正这个问题。我将这个问题与上面@Ben的答案结合起来,现在它可以工作了(使用IntelliJ)。要获得自动完成,可以将包含phar的目录添加为包含路径。在上图中,它将是
    /usr/local/cillar/phpunit/5.0.0/libexec/
    。我确实需要它,但无法让它工作。如果我运行测试