2016年10月27日木曜日

cakephp3 phpunit 利用時に使える便利なmethodなどについて

PHP Ver 5.6.27
CakePHP Ver 3.1.9


公式ページを見れば記載があるが、少しわかりにくいのでPHPUnitで利用されるファイルやメソッドについて書いておく。


Fixtures:
実際のアプリケーションに使われているデータを破壊することなく テストができる
 ・各フィクスチャで必要なテーブルを作成します
 ・フィクスチャにデータが存在すれば、それをテーブルに投入します
 ・テストメソッドを実行します
 ・フィクスチャのテーブルを空にします
 ・データベースからフィクスチャのテーブルを削除します

記述例(xxxControllerTest.php)
---------------------------------------------------
public $fixtures = [ 'app.user', 'app.article' ];
---------------------------------------------------


setUp method:
テストメソッドの前に毎回呼び出されます
テストされるオブジェクトの生成や、テストのためのデータの初期化に使われます
メールなどの設定はここに記述すると便利
※parent::setUp() を呼び出すことを忘れないでください

記述例(xxxControllerTest.php)
---------------------------------------------------
public function setUp() {
  parent::setUp();

  Email::dropTransport('default');
  Email::configTransport('default', [ 'className' => 'Debug', ]);
}
---------------------------------------------------


tearDown method:
テストメソッドの後に毎回呼び出されます
テストが完了した後のクリーンアップに使われます
※parent::tearDown() を呼び出すことを忘れないでください

記述例 (xxxControllerTest.php)
---------------------------------------------------
public function tearDown() {
  parent::tearDown();
}
---------------------------------------------------


setupBeforeClass method:
クラスのテストメソッドを実行する前に一度だけ呼ばれます
※このメソッドは static でなければなりません

記述例 (xxxControllerTest.php)
---------------------------------------------------
public static function setupBeforeClass() {
  parent::setupBeforeClass();
}
---------------------------------------------------


tearDownAfterClass method: 
クラスのテストメソッドをすべて実行した後に一度だけ呼ばれます
※このメソッドは static でなければなりません

記述例 (xxxControllerTest.php)
---------------------------------------------------
public static function tearDownAfterClass() {
  parent::tearDownAfterClass();
}
---------------------------------------------------

0 件のコメント:

コメントを投稿