/ / zend-framework、zend-framework2、phpunit、composer-php、PHPUnitの複数のバージョンを作者経由でインストールする

zend-framework、zend-framework2、phpunit、composer-phpを使用してPHPUnitの複数のバージョンをインストールする

私は一緒に働いています ZendFramework 1.x & 2.x残念ながら ZendFramework 1.x サポートのみ PHPUnit 3.x そして、 Zend Framework 2.x 要求する PHPUnit 4.x

これはPHPUnitの2つのバージョンをインストールしたいのですが、ここでは試したcomposer.jsonファイルがあります。

{
"repositories": [{
"type": "pear",
"url": "http://pear.symfony-project.com"
},{
"type": "pear",
"url": "http://pear.phpunit.de"
}],
"require-dev": {
"pear-pear.phpunit.de/PHPUnit": "3.4.*",
"phpunit/phpunit": "*"
}
}

私は次のメッセージを受け取っています。

パッケージphpunit / phpunit:nameのbin phpunitのインストールをスキップしました 既存のファイルとの競合

とにかく、私が作曲家にインストール時に別の名前を使用するよう指示することはできますか? vendor/bin ディレクトリ?例えば "pear-pear.phpunit.de/PHPUnit": "3.4.*" 用途 vendor/bin/pu34 そして、 "phpunit/phpunit": "*" 用途 vendor/bin/pu

作曲家でこれを行うことは可能でしょうか?

回答:

回答№1は1

Composerはインストールをサポートしていません 同じパッケージの複数のバージョン.

あなたが行うことができる唯一のことは、1つ(またはその両方)を phar。しかし、彼らは composer.json.


回答№2の場合は1

私はZend Framework 1がPHPUnit 3.xだけをサポートしているという前提には挑戦します。

私が3.7から4.0の間に見た変化は、あなたが通常働いている地域、つまり PHPUnit_Framework_TestCase。変更されたのは、リスナーなどの全体のことです。これは現在、「危険なテスト」の新しい概念に反応しなければなりませんが、Zend Frameworkで使用されることは認識していません。

私は2つのことを言う:

  1. PHPUnitをサポートしているZend Frameworkはありませんバージョン、それはあなたでなければなりません。あなたはテストを書く責任があります。また、アプリケーションをZF1からZF2に移行する場合は、テストインテグレーションも移行する必要があります。これは、 Zend_Test_PHPUnit_ControllerTestCase それがPHPUnit 4で動作するようにするために、それを行ってください! :)
  2. PHPUnitやSymfonyのPEARディストリビューションチャネルを使用しないようにしてください。これらはしばらくの間オフになりますが、