MoyaSystem

もやしです。

PHPUnit の setUp関数と setUpBeforeClass 関数の違い

PHPUnit の setUp 関数について勘違いしていた。


setUp 関数は、クラス内のテストケースそれぞれについて、開始前に1回ずつ起動する。インスタンスのプロパティの初期化に用いるとよい。


一方、setUpBeforeClass 関数は、クラスをインスタンス化する前に1度だけ起動する。DBへの接続や、テストケースで共通に使う値(ユーザなど)の作成に用いると良い。これは static 関数なので、当然 static な変数しか扱えないことに注意。


tearDown 関数と tearDownAfterClass 関数にも同様の関係が言える。


setUp 関数は全部のテストケース実行前になされるものだと思っていたら違ったのでメモメモ。