PHP5.2環境にPHPUnitをインストールする手順

まさかPHPのバージョンまでレガシーとは…
PHPUnit最新版はPHP5.3.3以上を求められます

phpunit/PHPUnit requires PHP (version >= 5.3.3), installed version is 5.2.17

5.2系ですとバージョン指定して依存関係があるファイルもそれぞれ入れなければいけないようですorz

インストール

PEARのアップグレード

レガシープロジェクトだとPEARのバージョンも低いので必須です

sudo pear upgrade --force pear

PHPUnitをインストール

インストールに依存ファイルがたくさん必要なので、順番に入れていきます

sudo pear install pear.symfony-project.com/YAML-1.0.2
sudo pear install phpunit/PHPUnit_Selenium-1.0.1
sudo pear install phpunit/PHPUnit_MockObject-1.0.3
sudo pear install phpunit/PHP_Timer-1.0.0
sudo pear install phpunit/File_Iterator-1.2.3
sudo pear install phpunit/PHP_CodeCoverage-1.0.2
sudo pear install phpunit/Text_Template-1.0.0
sudo pear install phpunit/DbUnit-1.0.0
sudo pear install phpunit/PHPUnit-3.5.15

pear install パッケージ名-バージョンとすると指定したバージョンのインストールになるようです
依存関係で怒られたらpear uninstall -n で一旦削除して違うバージョンを入れました

未確認

sudo pear install -o phpunit/PHPUnit-3.5.15

これで依存関係を全部入れてくれたりするのかな??

PHPUnit_SkeletonGeneratorは動きません

phpunit/Text_Template-1.1.1以上が必要で、これにはPHP5.3.3が必要です

sudo pear install phpunit/PHPUnit_SkeletonGenerator

雛形を作るときは

phpunit --skeleton-test Class_Name Class_Name.php

http://www.phpunit.de/manual/3.5/ja/skeleton-generator.html#skeleton-generator.test
※こっちのほうがrequire_onceを書いてくれて便利かも(ファイルが環境に依存しちゃうけど)

おまけ

phpcpdのインストール

バージョンを指定しないとインストール出来ません

$ sudo pear install phpunit/phpcpd 

phpunit/phpcpd requires package "phpunit/File_Iterator" (version >= 1.3.0), installed version is 1.2.3
No valid packages found
install failed

適当に1.0.0を指定したら入ったヽ(^o^)丿

sudo pear install phpunit/phpcpd-1.0.0
downloading phpcpd-1.0.0.tgz ...
Starting to download phpcpd-1.0.0.tgz (7,151 bytes)
.....done: 7,151 bytes
install ok: channel://pear.phpunit.de/phpcpd-1.0.0

phpdcdのインストール

最新版でもbetaなのでバージョン指定しますが、入りません

$ sudo pear install phpunit/phpdcd-0.9.3

phpunit/phpdcd requires package "phpunit/File_Iterator" (version >= 1.3.0RC1), installed version is 1.2.3
No valid packages found
install failed

一番古いバージョンを指定してもダメでしたヽ(^o^)丿

sudo pear install phpunit/phpdcd-0.9.0
phpunit/phpdcd requires PHP (version >= 5.3.1), installed version is 5.2.17
No valid packages found
install failed

最初に普通の入れ方しようとして環境がぐちゃぐちゃになっちゃった気がするので手順がこれだけで足りているのか一部不明です
変なところがあったら指摘おねがいしますm(__)m