最初にプリロード用スクリプトを用意します。
プリロードスクリプトでは、Symfony2のカーネルディレクトリ(KERNEL_DIR)の設定と、Symfony2のブートストラップファイルの読み込みを行うようにします。
(app/testrunner_preload.phpに作成します)
<?php
$_SERVER['KERNEL_DIR'] = __DIR__;
require_once 'bootstrap.php.cache';KERNEL_DIRの設定はapp/phpunit.xml.dist内で行うことも可能ですが、これはXMLファイルであるため、動作させる環境ごとにパスを書き換えなくてはなりません。このようにしてしまうと汎用性がなくなり、たとえばJenkinsのようなCIツールで自動テストを実行させようとする場合等、問題になります。
次のコマンドで、src ディレクトリ以下の全ファイルの変更が継続的に監視されます。実行するテストスイートの設定は、Symfony2のデフォルトであるapp/phpunit.xml.distを使います。
phpunitrunner -p app/testrunner_preload.php --phpunit-config=app/phpunit.xml.dist -a src/
growl通知を有効にするには-gオプションを追加します(要growlnotify)。
phpunitrunner -g -p app/testrunner_preload.php --phpunit-config=app/phpunit.xml.dist -a src/
XML の testsuites 要素はサポートされていませんのでご注意ください。これはテストコレクターが独自の実装になっていることが原因です。