JMockitのinvocations,minInvocations,maxInvocationsの使い方

JMockitのinvocations,minInvocations,maxInvocationsの使い方

JMockitで@Mock(invocations=2)と書くと、2回呼ばれた事の確認テストができます。

また、2回よりも多く呼ばれたり少なく呼ばれた場合はエラーとなります。

以下はlog4jのinfoメソッドを2回呼ばれることを確認する時のテストです。

new MockUp<Log4JLogger>() {
  @Mock(invocations = 2)
  public void info(Object obj) {
    // 期待値
    String expected = "終了";
    // 実行結果
    String actual = obj.toString();
    // 検証
    assertThat(actual, is(expected));
  }
}

@Mock(invocations = 0)とすると、そのメソッドが呼ばれないことを確認することができます。

@Mock(invocations = 0)
private void aaaMethod() {
}

@Mock(minInvocations = 1)と指定すると、最低1回実行されることのテストになります。

@Mock(maxInvocations = 1)と指定すると、最大1回実行されることのテストになります。なので1回も実行されてなくてもテストとしては正常となります。

 

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました