2017-01-13 19 views
1

エンドビヘイビアでの失敗の完全な最小限の例を誰かに教えてもらえますか?Expect(fail-at-end)

The docs I foundはちょうど言う:

expect.that(actual).isEqualTo(expected); // supplied by @Rule 

ユースケース:私は1つのテストがしたい、複数の(同じオブジェクトのアサーションを主張するが、テスト自体があるので、私は、すべての障害を主張見たいのですが長期的なプロセス)。

答えて

1

Expectは、JUnit @Ruleとして使用することを意図しています。テストが終了した後にAssertionErrorがスローされたことをソースコードで確認すると、rule's apply() methodになります。ここではそれが何をするかの簡易版だ:

public void evaluate() throws Throwable { 
    // this invokes the test, collecting failures in gatherer 
    base.evaluate(); 
    // after the test finishes the failures are collected and thrown 
    if (!gatherer.getMessages().isEmpty()) { 
    throw new AssertionError(gatherer.toString()); 
    } 
} 

example usage of Expectは、(よりよい文書化の別の場所であってはならないと言っているのではない)ユニットテストであります。基本的に、同じように行を追加します。

@Rule public final Expect expect = Expect.create(); 

その後、代わりにテストが完了したら失敗し、テストがフェイルファストことはありませんfooに関するアサーションを作るためにexpect.that(foo)....を使用しています。

関連する問題