PhpStorm中的Phpunit错误

时间:2015-07-22 08:07:26

标签: phpunit phpstorm

我在PhpStorm中运行测试,我收到此错误。有谁知道究竟是什么导致它?

  

PHP致命错误:Class' PHPUnit_TextUI_ResultPrinter'找不到   第249行的C:\ Users \ administrator1 \ AppData \ Local \ Temp \ ide-phpunit.php

我在其他项目中运行测试 - 它们也使用ide-phpunit.php并且运行得很好。

10 个答案:

答案 0 :(得分:17)

我在Ubuntu 16.10,phpStorm 2017.2和Laravel 5.5上遇到了同样的问题

通过使用

从我的Ubuntu系统卸载phpunit来修复它
sudo apt-get remove phpunit
sudo apt-get install --autoremove

我的phpStorm-Configuration(文件 - >设置 - >语言和框架 - > PHP - >测试框架)

现在很棒!

答案 1 :(得分:14)

我的愚蠢错误......只是忘了将phpunit添加为项目中的依赖项。对于其他任何收到此错误的人,请给composer.json添加:

"require-dev": {
    "phpunit/phpunit": "3.7.*"
},

然后运行:

composer update

解决了这个问题。

答案 2 :(得分:10)

在我的情况下,问题是由以下一系列原因造成的:

  1. 我使用带有composer require phpunit/phpunit命令的composer安装了phpunit。我没注意默认情况下它使用php7并安装了phpunit6,它的类名称带有命名空间(PHPUnit\TextUI\ResultPrinter)。
  2. IDE运行旧版本的phpunit,它需要没有名称空间(PHPUnit_TextUI_ResultPrinter
  3. 的类名

    我决定重新安装phpunit运行与上面相同的composer命令,但是在php 5.6下(因为与php5.6兼容很重要)并安装了phpunit 5.7。 但是有可能使用较新版本的phpunit和php:Settings > PHP > PHPUnit :: "Use composer autoloader"(设置供应商内部的phpunit可执行文件的路径(在我的情况下它是vendors/bin/phpunit))

答案 3 :(得分:6)

在PHPStorm中使用各种修饰符 -F10键时出现此错误,因为它不知道在哪里可以找到正确的PHPUnit。

在设置(ctrl-alt-s)中,搜索PHPUnit。在我的情况下,我想将其设置如下:

  • "使用composer autoloader"
  • 脚本路径:full-path-to-project/vendor/autoload.php(此字段对我来说是空的,对话框中显示错误)

否则它会尝试使用库的某些缓存版本(/tmp/ide-phpunit.php)而不是编写器版本。如果您更喜欢使用一些全局安装的二进制文件,您当然可以使用Path to phpunit.phar选项。

答案 4 :(得分:4)

我通过composer遇到了PHP7.1和PHPUnit 6.3的相同问题但是我通过phpunit.phar解决了。 (在选项中:选择phpunit.phar的路径,点击下载并点击刷新)

enter image description here

答案 5 :(得分:3)

更新到最新作曲家composer run-script drupal-phpunit-upgrade后,即使我通过自动加载器加载,PHPStorm仍然映射到旧版本。我去了语言和语言框架> Php>测试框架并点击与“脚本路径”相同的行上的刷新按钮。

现在我的PHPUnit版本读取6.5.8。

答案 6 :(得分:0)

就我而言,在phpstorm首选项中 - > php - >当需要使用远程php 7(ubuntu)时,CLI解释器设置在本地。

因为我使用vagrant box来在ubuntu上配置我的环境。

答案 7 :(得分:0)

我最近遇到了类似的错误PHPUnit_TextUI_ResultPrinter not found in TeamCity.php on line 19

我正在使用PhpStorm 2018.3.3。使用来自PhpStorm $ phpunit PHPUnit 7.5.1 by Sebastian Bergmann and contributors.

的终端时

从我的Ubuntu系统 $ phpunit --version PHPUnit 5.1.3 by Sebastian Bergmann and contributors.

我必须确保我的Ubuntu系统PHPUnit已更新到7.5.1。所以这就是我所做的:

sudo wget https://phar.phpunit.de/phpunit-7.5.1.phar
sudo chmod +x phpunit-7.5.1.phar
sudo mv phpunit-7.5.1.phar /usr/local/bin/phpunit

然后我去了PhpStorm: 文件>设置>语言和框架> PHP>测试框架,并确保PHPUnit版本也是7.5.1

然后从PhpStorm终端:phpunit,测试用例运行正常。

答案 8 :(得分:0)

我进入了设置,并按照以下步骤将php的路径设置为:(根据brew)

/usr/local/opt/php/bin/php

然后phpunit起作用。

答案 9 :(得分:-2)

我得到了同样的错误。使用phpunit4.8(旧版本)解决