継続的デリバリーへの一歩:自動受け入れテスト(準備編)

自動受け入れテストは、コミットテストが成功して初めて実施されるものであるため、実行タイミングを分けてやる必要がある。ここでは、Java での開発を前提とし、自動受け入れテストは JUnit を使用するものとする。

ググってみたところ、 maven単体テスト結合テストを分離するための超簡易な方法が紹介されていた。

http://stackoverflow.com/questions/1399240/how-do-i-get-my-maven-integration-tests-to-run

要は、テスト対象のクラス名を指定することで単体テストかどうかを分離している。

  # 単体テスト (通常通り)
  mvn test
  # 結合テスト (オプション付き)
  mvn test -Dtest=**/*Integration

単体テストは末尾が Test のクラスが実行され、結合テストは末尾が Integration のクラスが実行される。
つまり、JUnit を利用するうえでは、テストの種類別にクラス名を分ければいいということになる。

多少問題があるが、単体テスト結合テストの実行タイミングを分離するという目的は達成できるので、とりあえずこの方法を採用してみる。