ソースコードから理解する技術-UnderSourceCode

手を動かす(プログラムを組む)ことで技術を理解するブログ

xampp環境にPHPUnit3のインストール

xampp上で開発していたPHPのレガシーコードに対して
Integration Testを作ろうと思い、PHPUnit3をインストールしました。

ほとんどネット上の既存の情報に頼ることが出来ましたが
若干つまづいたところもあったので、備忘録として残しておきます。

◆インストール
・参考サイト
[PHP][PHPUnit][Windows7]開発環境構築メモ(PHP/XAMPP/PHPUnit on Windows7) をほぼ参考。
また既存のPHPUnitのアンイントール後に、PHPUnit、PHPUnit2フォルダをPEARから削除した。

・インストール中のエラー
No releases available for package "pear.phpunit.de/PHPUnit" install failed
というエラーが発生した。

http://tjtjtj.hatenablog.com/entry/20110729/1311951631
http://stackoverflow.com/questions/2006626/installing-phpunit-via-pear
これらのサイトを参考にして、以下のコマンドを実行。

pear update-channels
pear clear-cache

PHPUnitのテスト作成
・TestCase.php がないと怒られる
require_onceでインクルードするファイルを以下のように修正。

require_once 'PHPUnit/Framework/TestCase.php';

Selenium IDEで作成したテストをPHPUnitから起動する
・参考サイト
Selenium + PHPUnitで簡単エンドツーエンドテストを実現する
をほぼ参考。

PHPUnit_Seleniumのインストール
テストを作成して実行すると、以下のエラーが発生した。
Fatal error: require_once(): Failed opening required 'PHPUnit/Extensions/SeleniumTestCase.php'

http://www.phpunit.de/manual/current/ja/selenium.html
上のサイトを参考に、以下のコマンドでPHPUnit_Selenium パッケージをインストール。

pear install phpunit/PHPUnit_Selenium

・テストコードの修正
テストケースに以下の追加、修正を行った。

//追加
require_once 'PHPUnit/Extensions/SeleniumTestCase.php';

//フルパスに変更。フレームワークなしのサイトに適用したため。
public static $seleneseDirectory = "Selenium IDEで作成したhtmlファイルを保存するフォルダパス";

以上です。