ホームページ > Java > &#&チュートリアル > 失敗した JUnit テストを即座に再試行するにはどうすればよいですか?

失敗した JUnit テストを即座に再試行するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-02 04:55:02
オリジナル
1084 人が閲覧しました

How to Retry Failed JUnit Tests Instantly?

失敗した JUnit テストを即座に再試行します

大規模なテスト スイートで時間に敏感なアクションが原因でまれに発生するテストの失敗を処理しようとすると、イライラすることがあります。幸いなことに、TestRule を実装して失敗したテストを再試行できるということです。

RetryRule の作成

TestRule を使用すると、テストの実行を制御できます。 RetryRule を作成するには、次のようなクラスを定義します。

<code class="java">public class RetryTest {
    public class RetryRule implements TestRule {
        ...
        public Statement apply(Statement base, Description description) {
            ...
        }
        ...
    }
}</code>
ログイン後にコピー

apply メソッドで、提供されたbase.evaluate():

<code class="java">public Statement apply(Statement, Description) {
    return new Statement() {
        @Override
        public void evaluate() throws Throwable {
            ...
            for (int i = 0; i < retryCount; i++) {
                ...
            }
            ...
        }
    };
}</code>
ログイン後にコピー
RetryRule の使用

次のようにテスト クラスにルールの注釈を付けます:

<code class="java">...
@Rule
public Retry rule = new Retry(3);
...</code>
ログイン後にコピー
その他のオプション

カスタム TestRunner:

または、BlockJUnit4ClassRunner を拡張し、runChild() をオーバーライドして再試行メカニズムを実装するカスタム TestRunner を作成することもできます。

注:

    RetryRule により、次のことが可能になります。再試行回数を指定できますが、カスタム TestRunner では指定できません。
  • 注釈を使用して、再試行ロジックを選択的に適用することもできます。

以上が失敗した JUnit テストを即座に再試行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート