3

いくつかのSpockテストクラスがパッケージにグループ化されています。Junit4.10を使用しています。各テストクラスには、いくつかの機能テストメソッドが含まれています。

テストケースを実行する前に、いくつかのセットアップ手順(DBへのデータのロード、Webサーバーの起動など)を実行したいのですが、テストの開始時に1回だけ実行します。

この「OneTimeSetup」メソッドを次のいずれかで1回だけ呼び出す必要があります。

  • パッケージ内のすべてのテストクラスを実行します(たとえば、テストスイートにグループ化されている場合)
  • いくつかのテストクラスを実行します
  • テストクラスを1つだけ実行します
  • テストクラス内で特定のフィーチャメソッドのみを実行します

SOに関する他の投稿を読むと、これがTestNGの@BeforeSuiteが行っていることのようです。

SpockのsetupSpec()メソッドとcleanupSpec()メソッドを知っていますが、これらは特定のテストクラス内でのみ機能します。「setupTestSuite()」のようなことをしたいと思っています。スポックでこれをどのように達成できますか?

4

1 に答える 1

4

グローバル拡張機能を記述したり、JUnitテストスイートを使用したり、ヘルパークラス(たとえばからsetupSpec)で静的メソッドを呼び出して、その作業を1回だけ実行したり、ビルドツールに処理を任せたりすることができます。

于 2013-02-19T00:25:03.183 に答える