PhpStorm 中的 Phpunit 错误
Phpunit error in PhpStorm
我在 PhpStorm 中 运行ning 进行测试,但出现此错误。有谁知道到底是什么原因造成的?
PHP Fatal error: Class 'PHPUnit_TextUI_ResultPrinter' not found in
C:\Users\administrator1\AppData\Local\Temp\ide-phpunit.php on line 249
我 运行 在其他项目中进行测试 - 也使用 ide-phpunit.php
并且它们 运行 很好。
我犯了一个愚蠢的错误...只是忘了在项目中添加 phpunit 作为依赖项。对于遇到此错误的任何其他人,请向 composer.json 添加:
"require-dev": {
"phpunit/phpunit": "3.7.*"
},
然后运行:
composer update
问题解决了。
我在 PHPStorm 中使用各种 modifier-F10 键时遇到此错误,因为它不知道在哪里可以找到正确的 PHPUnit。
在设置 (ctrl-alt-s) 中,搜索 PHPUnit。就我而言,我想将其设置如下:
- "use composer autoloader"
- 脚本路径:
full-path-to-project/vendor/autoload.php
(这个字段对我来说是空的,对话框中显示错误)
否则它会尝试使用库的某些缓存版本 (/tmp/ide-phpunit.php
) 而不是作曲家版本。如果您更喜欢使用一些全局安装的二进制文件,您当然可以使用 Path to phpunit.phar
选项。
在我的案例中,问题是由以下原因引起的:
- 我使用 composer 和
composer require phpunit/phpunit
命令安装了 phpunit。我没有注意到默认情况下它使用 php7 并安装了 phpunit6,它具有 class 名称和命名空间 (PHPUnit\TextUI\ResultPrinter
).
- IDE 运行旧版本的 phpunit,它需要 class 个没有名称空间的名称 (
PHPUnit_TextUI_ResultPrinter
)
我决定重新安装 phpunit
运行 与上面相同的 composer 命令,但是在 php 5.6
下(因为与 php5.6 兼容很重要)和它安装了 phpunit 5.7
。
但是可以使用较新版本的 phpunit 和 php:Settings > PHP > PHPUnit :: "Use composer autoloader"
(在供应商内部设置 phpunit 可执行文件的路径(在 vendors/bin/phpunit
我的情况))
我遇到了同样的错误。使用phpunit4.8(旧版本)解决
我通过 composer 使用 PHP7.1 和 PHPUnit 6.3 遇到了同样的问题,但我通过 phpunit.phar 解决了。 (在选项中:select phpunit.phar 的路径,点击下载并点击刷新)
我在 Ubuntu 16.10、phpStorm 2017.2 和 Laravel 5.5
中遇到了同样的问题
通过使用
从我的 Ubuntu-system 中卸载 phpunit 来修复它
sudo apt-get remove phpunit
sudo apt-get install --autoremove
或 mac:
brew uninstall phpunit
brew install phpunit
我的 PhpStorm 配置(文件 -> 设置 -> 语言和框架 -> PHP -> 测试框架):
效果很好,现在!
在我的例子中,在 phpstorm 首选项 -> php -> CLI 解释器设置在本地,当它需要使用远程 php 7 (ubuntu).
因为我使用 vagrant box 在 ubuntu 上配置了我的环境。
更新到最新的作曲家后,composer run-script drupal-phpunit-upgrade
,即使我通过自动加载器加载,PHPStorm 仍然映射到旧版本。我转到语言和框架 > Php > 测试框架并点击与 "Path to Script".
相同的行上的刷新按钮
现在我的 PHPUnit 版本为 6.5.8。
我最近遇到了类似的错误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:
File > Settings > Language & Frameworks > PHP > Test Frameworks 并确保 PHPUnit 版本也是 7.5.1
然后从 PhpStorm 终端:phpunit
测试用例 运行 非常好。
我去设置里把我的路径设置成php如下:(根据brew)
/usr/local/opt/php/bin/php
然后 php单元工作。
我在 PhpStorm 中 运行ning 进行测试,但出现此错误。有谁知道到底是什么原因造成的?
PHP Fatal error: Class 'PHPUnit_TextUI_ResultPrinter' not found in C:\Users\administrator1\AppData\Local\Temp\ide-phpunit.php on line 249
我 运行 在其他项目中进行测试 - 也使用 ide-phpunit.php
并且它们 运行 很好。
我犯了一个愚蠢的错误...只是忘了在项目中添加 phpunit 作为依赖项。对于遇到此错误的任何其他人,请向 composer.json 添加:
"require-dev": {
"phpunit/phpunit": "3.7.*"
},
然后运行:
composer update
问题解决了。
我在 PHPStorm 中使用各种 modifier-F10 键时遇到此错误,因为它不知道在哪里可以找到正确的 PHPUnit。
在设置 (ctrl-alt-s) 中,搜索 PHPUnit。就我而言,我想将其设置如下:
- "use composer autoloader"
- 脚本路径:
full-path-to-project/vendor/autoload.php
(这个字段对我来说是空的,对话框中显示错误)
否则它会尝试使用库的某些缓存版本 (/tmp/ide-phpunit.php
) 而不是作曲家版本。如果您更喜欢使用一些全局安装的二进制文件,您当然可以使用 Path to phpunit.phar
选项。
在我的案例中,问题是由以下原因引起的:
- 我使用 composer 和
composer require phpunit/phpunit
命令安装了 phpunit。我没有注意到默认情况下它使用 php7 并安装了 phpunit6,它具有 class 名称和命名空间 (PHPUnit\TextUI\ResultPrinter
). - IDE 运行旧版本的 phpunit,它需要 class 个没有名称空间的名称 (
PHPUnit_TextUI_ResultPrinter
)
我决定重新安装 phpunit
运行 与上面相同的 composer 命令,但是在 php 5.6
下(因为与 php5.6 兼容很重要)和它安装了 phpunit 5.7
。
但是可以使用较新版本的 phpunit 和 php:Settings > PHP > PHPUnit :: "Use composer autoloader"
(在供应商内部设置 phpunit 可执行文件的路径(在 vendors/bin/phpunit
我的情况))
我遇到了同样的错误。使用phpunit4.8(旧版本)解决
我通过 composer 使用 PHP7.1 和 PHPUnit 6.3 遇到了同样的问题,但我通过 phpunit.phar 解决了。 (在选项中:select phpunit.phar 的路径,点击下载并点击刷新)
我在 Ubuntu 16.10、phpStorm 2017.2 和 Laravel 5.5
中遇到了同样的问题通过使用
从我的 Ubuntu-system 中卸载 phpunit 来修复它sudo apt-get remove phpunit
sudo apt-get install --autoremove
或 mac:
brew uninstall phpunit
brew install phpunit
我的 PhpStorm 配置(文件 -> 设置 -> 语言和框架 -> PHP -> 测试框架):
效果很好,现在!
在我的例子中,在 phpstorm 首选项 -> php -> CLI 解释器设置在本地,当它需要使用远程 php 7 (ubuntu).
因为我使用 vagrant box 在 ubuntu 上配置了我的环境。
更新到最新的作曲家后,composer run-script drupal-phpunit-upgrade
,即使我通过自动加载器加载,PHPStorm 仍然映射到旧版本。我转到语言和框架 > Php > 测试框架并点击与 "Path to Script".
现在我的 PHPUnit 版本为 6.5.8。
我最近遇到了类似的错误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: File > Settings > Language & Frameworks > PHP > Test Frameworks 并确保 PHPUnit 版本也是 7.5.1
然后从 PhpStorm 终端:phpunit
测试用例 运行 非常好。
我去设置里把我的路径设置成php如下:(根据brew)
/usr/local/opt/php/bin/php
然后 php单元工作。