我已经被困在这上面4个小时了。我正试着在我的拉弗5项目上运行一些测试。我上次跑步的时候,他们已经工作了一个月左右了,但我想再跑一次。仅供参考,我用的是流浪汉。
这是我的composer.json文件中的一个片段。

"require": {
    "laravel/framework": "5.0.*",
    "illuminate/html": "^5.0",
    "doctrine/dbal": "~2.5",
    "maatwebsite/excel": "~2.0.0",
    "zizaco/entrust": "dev-laravel-5",
    "kalnoy/nestedset": "^3.0"
},
"require-dev": {
    "phpunit/phpunit": "4.2.*",
    "phpspec/phpspec": "~2.1"
},

但每当我在终端运行phpunit时
此版本的phpunit需要php 5.6;强烈建议使用最新版本的php。
我已经尝试了下面的所有通过谷歌和堆栈溢出找到的。
composer clear-cache命令
重新装载流浪者
更改版本(4.0、~4.0、4.8、4.1.*)
将“cache files ttl”:0添加到my composer.json
在下面的输入中,都返回关于php 5.6的相同错误消息
phpunit—检查版本
phpunit—自更新
单元测试
值得一提的是,/vendor/phpunit/composer.json显示
"require": {
    "php": ">=5.3.3",
    ...
}
...
"extra": {
    "branch-alias": {
        "dev-master": "4.2.x-dev"
    }
},

此外,调用php -v显示“php 5.4.45(cli)(构建时间:2015年9月4日15:40:44)”。phpinfo()也显示了同样的情况。
你知道这是怎么回事吗?

最佳答案

您的系统上有多个phpunit副本。在终端中运行此命令将告诉您路径中的是哪一个:

which phpunit

正如您上面的评论所证实的,您没有使用项目文件夹中的那个,所以您需要从phpunit开始
./vendor/phpunit/phpunit/phpunit [rest of command]

或者创建指向该副本的符号链接。

关于php - 无法运行PHPUnit,因为它说“PHPUnit需要PHP 5.6”,但是我安装了4.2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33407286/

10-16 09:30