【发布时间】:2022-01-27 12:23:26
【问题描述】:
在 Mac 上使用 Laravel 和 DDEV/Docker,我无法让 PhpStorm 直接运行 PHPUnit 并覆盖。我正在遵循这些说明:https://ddev.readthedocs.io/en/stable/users/topics/phpstorm/
我开始设置
curl -s "https://laravel.build/myproject?with=mysql,redis,memcached" | bash
一切正常,包括在我打开 Xdebug 后使用 Xdebug 进行调试
ddev xdebug on
PHPUnit 也可以通过控制台正常工作:
ddev exec phpunit
Composer 版本是 2.1.4。
按照上述说明,我被困在第 6 点。
我错过了什么? PHPUnit 位于该目录中,并且它也是 composer 安装的:
【问题讨论】:
-
不能说 100% 是问题所在(不使用 DDEV,所以不知道他们的说明有多准确),但在您的第一个屏幕截图中,您选择了 phpunit.PHAR 选项但指向 PHPUnit executable... 你知道
.../bin/phpunit可执行文件可能根本不是 PHAR 文件吗?您最好尝试“composer”选项,因为这就是 composer.json 中的phpunit/phpunit所代表的。如果您选择 PHAR 选项,则文件必须是 PHAR 文件。 -
似乎 composer 2.2.* 改变了 phpunit 的安装方式,请参阅 twitter.com/StefanFroemken/status/1474215132544839683 - 您可能需要
ddev config --composer-version=2.1.14直到新的 composer 2.2.x 损坏解决。 -
我不知道 DDEV,但不要使用
/var/www/html/vendor/bin/phpunit而是使用/var/www/html/vendor/autoload.php并选择另一个选项:Use Composer autoloader。这在使用 Docker + Composer (PHPUnit) 时一直有效 -
谢谢,@LazyOne 实际上我在凌晨 3 点有点失明。
-
@rfay:我使用的是 composer-version 2.1.14。这是当前的 ddev 默认值。
标签: macos phpunit phpstorm ddev