CakePHP1.2 SimpleTest のテストケースをまとめて実行する
ある程度テストケースが増えてくるといちいち App Test Cases からひとつづつテストを実行するのは面倒です。そこでグループ化してまとめてテストケースを実行する方法です。
テストケースのグループ化
app/tests/groups 以下に GroupTest を継承したクラスを作成する。
GroupTest を継承したクラスのファイル名は hoge.group.php のように .group.php を付ける。
まとめる対象はディレクトリかファイルを指定できる。
ディレクトリでテストケースをグループ化
例としてモデルのテストケースを全てグループ化してみます。
app/tests/groups/model.group.php
<?php
class ModelGroupTest extends GroupTest {
var $label = 'Model Group Test';
function ModelGroupTest() {
TestManager::addTestCasesFromDirectory($this, APP_TEST_CASES.DS.'models');
}
}
?>
TestManager::addTestCasesFromDirectory でグループにするディレクトリを指定しています。ここではモデルのテストケースのある app/tests/cases/models を指定しています。
ファイルでテストケースをグループ化
ファイルを指定してグループ化することも可能です。
app/tests/groups/test1.group.php
<?php
class Test1GroupTest extends GroupTest {
var $label = 'Test1 Group Test';
function Test1GroupTest() {
TestManager::addTestCasesFromDirectory($this, APP_TEST_CASES.DS.'models');
TestManager::addTestFile($this, APP_TEST_CASES.DS.'controllers'.DS.'users_controller');
}
}
?>
モデルのグループに addTestFile で app/tests/cases/controllers/users_controller.test.php を追加しています。ファイル名を指定するときにファイル名の最後の .test.php は付けません。
グループテストの実行
test.php の App Test Group をクリックすると作成したグループが表示されます。実行したいグループテストをクリックするとグループ化したテストケースが全て実行されます。
参考URL
API for CakePHP : The PHP Rapid Development Framework :: version 1.2.x.x
関連する投稿
One comment
2abasement への返信 コメントをキャンセル
Additional comments powered by BackType
1acclaim…
…