PHPUnit错误-Can';t使用MAMP服务器从命令行运行Laravel测试

PHPUnit错误-Can';t使用MAMP服务器从命令行运行Laravel测试,php,laravel,unit-testing,phpunit,Php,Laravel,Unit Testing,Phpunit,我有这个问题已经有一段时间了。首先,我在Mac OS上安装了MAMP Pro服务器,选择的默认PHP版本是7.3.8。我还选中了“在命令行上提供此版本”选项。但是每当我尝试使用phpunit命令运行laravel测试时,我都会得到以下错误: PHPUnit 8.4.3 by Sebastian Bergmann and contributors. This version of PHPUnit is supported on PHP 7.2, PHP 7.3, and PHP 7.4. You

我有这个问题已经有一段时间了。首先,我在Mac OS上安装了MAMP Pro服务器,选择的默认PHP版本是7.3.8。我还选中了“在命令行上提供此版本”选项。但是每当我尝试使用
phpunit
命令运行laravel测试时,我都会得到以下错误:

PHPUnit 8.4.3 by Sebastian Bergmann and contributors.

This version of PHPUnit is supported on PHP 7.2, PHP 7.3, and PHP 7.4.
You are using PHP 7.1.16 (/usr/bin/php).
我已经在命令行上使用it输出的
php-v
确认了我的php版本

PHP 7.3.8 (cli) (built: Aug 14 2019 16:42:46) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.8, Copyright (c) 1998-2018 Zend Technologies

请帮忙。

您的/usr/bin/php文件没有链接到您的MAMPs版本的php。此文件由phpunit使用(在您的案例中)

让我告诉您如何切换它:

首先,移开原始链接

sudo mv /usr/bin/php /usr/bin/php.bak
然后将/usr/bin/php链接到实际的MAMP php版本:

sudo ln -s /Applications/MAMP/bin/php/php7.3.8/bin /usr/bin/php

使用提供7.3.8版本的
/usr/bin/php-v
对其进行验证。

/usr/bin/php-v
提供了什么?提示:php可能未链接到/usr/bin/php。用命令行中的
whereis php
检查它
/usr/bin/php-v
给我
PHP7.1.16(cli)(构建时间:2018年3月31日02:59:59)(NTS)
whereis php
给我
/usr/bin/php
好的,这似乎是正确的一步:你的“/usr/bin/php”链接指向错误的php版本。你能执行
php-r'echo php\u BINDIR;'
查看php别名的位置?谢谢。我刚刚完成了,它链接到
/Applications/MAMP/bin/php/php7.3.8/bin
,我提供了一个符合您要求的答案。谢谢,但我在每种情况下都会得到一个操作不允许的错误。在尝试这些命令之前,我是否需要关闭服务器?您必须使用具有更改系统设置权限的帐户来运行服务器。以下内容是否有助于您进一步执行这些命令?