1

私は日食が初めてです。私は JUnit 4 を使用しています。初期化が行われる Testcase を拡張するセットアップ メソッドをクラスに記述しました。同じクラスにいくつかのテストケースがあります。私はテストデータをzip形式でワークスペースに添付しています。現在、単一のテスト データに対してすべてのテスト ケースを実行できます。どういうわけか、コントロールを setup() に戻して、2 番目のテスト データを取得し、すべてのテスト ケースを実行する必要があります。出来ますか?はいの場合、誰かコードスニペットを送ってもらえますか?

前もって感謝します

返信ありがとうございますが、そのようなコードをセットアップメソッドに保持する必要があるかどうか、およびセットアップからテストデータを取得する方法をどこに保持する必要がありますか?

4

1 に答える 1

1

パラメータ化されたランナーを使用する必要があります。複数のテストデータを使用して同じテストを実行できます。たとえば、以下は、テストが4回実行され、パラメータ「number」が毎回配列内の値に変更されることを意味します。

@RunWith(value = Parameterized.class)
public class StackTest {
 Stack<Integer> stack;
 private int number;

 public StackTest(int number) {
   this.number = number;
 }

 @Parameters
 public static Collection data() {
   Object[][] data = new Object[][] { { 1 }, { 2 }, { 3 }, { 4 } };
   return Arrays.asList(data);
 }
 ...
}

編集

何がはっきりしていないのかわかりませんが、はっきりさせようと思います。

@RunWith(value = Parameterized.class)アノテーションが必要です。コレクションオブジェクトを返す@Parametersで注釈が付けられたメソッドが必要です。このオブジェクトの各要素は、テストに使用されるさまざまなパラメーターの配列である必要があります。これらのパラメーターを受け入れるパブリックコンストラクターが必要です。

追加情報、および別の例は、ドキュメントに記載されています。

さらに多くの

于 2009-07-26T06:34:45.240 に答える