几天前我开始使用PHPUnit并遇到了这个问题。
我想在我从github克隆的项目中测试一些类。
在项目中有两个文件夹:" tests"和" src"并在每个composer.json
文件中。
在src文件夹中,该文件如下所示:
{
"require": {
"php": ">=5.3.0",
"monolog/monolog": "1.*",
"slim/slim": "2.*"
},
"autoload": {
"classmap": ["classes/"]
}
}
并在tests文件夹中,文件如下所示:
{
"require-dev": {
"phpunit/phpunit": "dev-master"
},
"autoload": {
"psr-0": {
"adServerTesting": ""
}
}
}
所以我创建了这个联合composer.json
:
{
"require": {
"php": ">=5.3.0",
"monolog/monolog": "1.*",
"slim/slim": "2.*"
},
"require-dev": {
"phpunit/phpunit": "dev-master"
},
"autoload": {
"classmap": ["classes/"],
"psr-0": {
"adServerTesting": ""
}
}
}
但是当我运行composer install
时,我收到以下错误:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for phpunit/phpunit dev-master -> satisfiable by phpunit/phpunit[dev-master].
- phpunit/phpunit dev-master requires php >=5.6 -> your PHP version (5.5.9-1ubuntu4.11) does not satisfy that requirement.
因为我已经在我的机器上安装了phpunit,我试图从composer install
文件夹路径中运行src
并且正常执行命令和测试,但现在在联合文件后我得到了这个错误。我看到它说我有PHP 5.5.9,我需要升级,但为什么它运行时,我从src文件夹运行composer install
? THX ..
答案 0 :(得分:0)
phpunit/phpunit:@dev
需要PHP 5.6,而你的PHP版本是5.5。
使用较低版本的PHPUnit,或者让作曲家决定。您可以通过致电:
来做到这一点 composer require phpunit/phpunit --dev
--dev
选项可添加到require-dev
部分。