首页  >  问答  >  正文

PhpUnit 9 在 php 8+ 上失败

我尝试使用 PHPUnit 9,但它不支持 8.0 以上的最新版本 PHP 我收到以下错误

致命错误:未捕获错误:调用 C:\xampp\php\pear\PHPUnit\Util\Getopt.php:80 中未定义的函数each() 堆栈跟踪:#0 C:\xampp\php\pear\PHPUnit \TextUI\Command.php(242): PHPUnit_Util_Getopt::getopt(Array, 'd:c:hv', Array) #1 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(138): PHPUnit_TextUI_Command ->handleArguments(Array) #2 C:\xampp\php\pear\PHPUnit\TextUI\Command.php(129): PHPUnit_TextUI_Command->run(Array, true) #3 C:\xampp\php\phpunit(46): PHPUnit_TextUI_Command ::main() #4 {main} 在第 80 行的 C:\xampp\php\pear\PHPUnit\Util\Getopt.php 中抛出

P粉505917590P粉505917590288 天前398

全部回复(1)我来回复

  • P粉010967136

    P粉0109671362024-01-29 10:28:15

    确保您没有使用较低版本的 PHPUnit 安装全局软件包。

    检查此答案以查找全局安装的软件包。

    cd $(composer -n config --global home) && ls -la vendor

    也许您正在调用全局而不是项目。
    如果您可以使用

    删除它
    composer global remove phpunit

    我想您的环境 PATH 变量包含全局 Composer 文件夹,因此默认情况下 phpunit 会调用该文件夹。
    否则,使用 ./vendor/bin/phpunit (来自目录 C:\xampp\htdocs\test)来调用您在项目中安装的特定版本。

    回复
    0
  • 取消回复