PhpStorm 无法解析 PHPUnit 版本输出。非常奇怪的错误
PhpStorm can not parse PHPUnit version output. Very strange error
我正在尝试在 Windows 10 上使用 Vagrant box 为 Laravel 项目在 PhpStorm 2017.1 中设置 PHPUnit。我已经设置了一个远程解释器,我已经使用它几个月了,一切正常。
我被要求做一些单元测试,所以我按照同事的指示(Mac 上的 PhpStorm)用 PHPUnit 设置了 PhpStorm,但是当我 select autoload.php
在我的供应商文件夹中,我收到错误消息
"Can not parse PHPUnit version output: Could not open input file: /vagrant/vendorphpunitphpunitphpunit
" (no slashes).
如果我在命令行中通过 vagrant ssh
运行 PHPUnit,我的测试执行得很好,我可以手动 select PhpStorm 中的 PHPUnit phar,但是我丢失了自动加载 类,所以一切都失败了。
WI-35806 -- 看起来是一样的。它今天被标记为已修复。
如果那是正确的票证,那么修复程序应该在 2017.1.2 可用——如果您不能等到它可用,您可以尝试 EAP build 2017.1.2决赛正式发布
如果您在使用 Docker 设置 PHPUnit 时遇到类似的错误,也可能是因为卷绑定错误。
在下面的首选项屏幕中,单击文件夹图标 Edit Docker Container Settings
,然后编辑 Volume bindings
。
如果您通过 Docker Compose
配置远程 PHP cli 解释器,如果您遇到类似的解析 PHP 单元版本输出的错误,原因可能来自使用 variables
在 docker-compose.yaml
中(例如在 volume binding
中使用 $PWD
)。
例如,如果您像这样挂载当前目录:
...
volumes:
- $PWD:/var/www/html
PHPStorm 不知道 $PWD
到底是什么,因此由于 volume binding
,它无法解析 PHPUnit 输出。您应该将变量更改为特定值(例如在这种情况下更改为 ./
):
...
volumes:
- ./:/var/www/html
我正在尝试在 Windows 10 上使用 Vagrant box 为 Laravel 项目在 PhpStorm 2017.1 中设置 PHPUnit。我已经设置了一个远程解释器,我已经使用它几个月了,一切正常。
我被要求做一些单元测试,所以我按照同事的指示(Mac 上的 PhpStorm)用 PHPUnit 设置了 PhpStorm,但是当我 select autoload.php
在我的供应商文件夹中,我收到错误消息
"Can not parse PHPUnit version output: Could not open input file:
/vagrant/vendorphpunitphpunitphpunit
" (no slashes).
如果我在命令行中通过 vagrant ssh
运行 PHPUnit,我的测试执行得很好,我可以手动 select PhpStorm 中的 PHPUnit phar,但是我丢失了自动加载 类,所以一切都失败了。
WI-35806 -- 看起来是一样的。它今天被标记为已修复。
如果那是正确的票证,那么修复程序应该在 2017.1.2 可用——如果您不能等到它可用,您可以尝试 EAP build 2017.1.2决赛正式发布
如果您在使用 Docker 设置 PHPUnit 时遇到类似的错误,也可能是因为卷绑定错误。
在下面的首选项屏幕中,单击文件夹图标 Edit Docker Container Settings
,然后编辑 Volume bindings
。
如果您通过 Docker Compose
配置远程 PHP cli 解释器,如果您遇到类似的解析 PHP 单元版本输出的错误,原因可能来自使用 variables
在 docker-compose.yaml
中(例如在 volume binding
中使用 $PWD
)。
例如,如果您像这样挂载当前目录:
...
volumes:
- $PWD:/var/www/html
PHPStorm 不知道 $PWD
到底是什么,因此由于 volume binding
,它无法解析 PHPUnit 输出。您应该将变量更改为特定值(例如在这种情况下更改为 ./
):
...
volumes:
- ./:/var/www/html