PHPUnit3+Phingでテストを実行すると余計な表示が出る
現在、PHPUnit3+Phingでハマリ中。。。
Phing2.3.0beta1のphpunitタスクを使って、4つのテストと12のテストを含む2つのテストケースを実行したところ、
$ phing clean-test Buildfile: /path/to/build.xml TestProject > clean-test: [delete] Deleting /path/to/reports/coverage.db : [phingcall] Calling Buildfile '/path/to/build.xml' with target 'test' TestProject > test: [mkdir] Created dir: /path/to/reports/tests [mkdir] Created dir: /path/to/reports/coverage [coverage-setup] Setting up coverage database for 3 files PHPUnit 3.1.7 by Sebastian Bergmann. .... Time: 0 seconds OK (4 tests) [phpunit2] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 2.32371 sec [phpunit2] Tests run: 12, Failures: 0, Errors: 0, Time elapsed: 7.25208 sec :
。。ん?なんか余計にテストしてないか、コイツ?テスト4つの方が実行されてるっぽい。。。
「何かなぁ」と思っていたところ、そういえば4つの方はPHPUnit3でクラスから自動生成していたことを思い出し、
<?php // Call CheckoutTest::main() if this source file is executed directly. //if (!defined('PHPUnit_MAIN_METHOD')) { // define('PHPUnit_MAIN_METHOD', 'CheckoutTest::main'); //} require_once 'PHPUnit/Framework.php'; : // Call CheckoutTest::main() if this source file is executed directly. //if (PHPUnit_MAIN_METHOD == 'CheckoutTest::main') { // CheckoutTest::main(); //} ?>
という具合にコメントアウト。再度実行してみると、
$ phing clean-test Buildfile: /path/to/build.xml TestProject > clean-test: [delete] Deleting /path/to/reports/coverage.db : [phingcall] Calling Buildfile '/path/to/build.xml' with target 'test' TestProject > test: [mkdir] Created dir: /path/to/reports/tests [mkdir] Created dir: /path/to/reports/coverage [coverage-setup] Setting up coverage database for 3 files [phpunit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 2.72150 sec [phpunit] Tests run: 12, Failures: 0, Errors: 0, Time elapsed: 5.84583 sec :
ああ。やっぱり。。。orz
うーん。毎回コメントアウトするのも数が多くなると面倒だし、自動生成せずに済ませられれば一番いいけど、そうも言ってられない場合もあるよなぁ。PHPUnit3のtplファイルに手を入れるのが一番早いけど、はどうしたもんかな。。。