問題タブ [junit5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3599 参照

gradle - junit 5 gradle テストレポートで stdout/stderr をキャプチャする方法は?

私のgradleプロジェクトはjunit 5を使用しており、テストレポートをビルドサーバーに表示しようとしています。XML レポートは基本的に問題ないように見えます。すべてのテスト クラスとメソッドが含まれていますが、テスト メソッドに出力された stdout/stderr がありません。テスト メタデータを含む CDATA は一部しかありません。

XML レポート:

gradle プラグインに stdout/stderr をキャプチャするように指示する設定はありますか? http://junit.org/junit5/docs/current/user-guide/#running-tests-buildを見回しましたが、何も見つかりませんでした。

と を使用org.junit.platform:junit-platform-gradle-plugin:1.0.0-M3してorg.junit.jupiter:junit-jupiter-{api,engine}:5.0.0-M3います。

0 投票する
2 に答える
25741 参照

java - JUnit 5 に assertThat() 関数がない場合、JUnit 5 で Hamcrest を使用するにはどうすればよいですか?

JUnit 4 で Hamcrest を使用するには、assertThat()関数を使用します。ただし、JUnit 5 には機能がなくなりassertThat()ます。なしでハムクレストを使用するにはどうすればよいassertThat()ですか?

0 投票する
7 に答える
52709 参照

java - JUnit 5 で、すべてのテストの前にコードを実行する方法

注釈は、クラス内のすべてのテストの@BeforeAll前に実行するメソッドをマークします。

http://junit.org/junit5/docs/current/user-guide/#writing-tests-annotations

しかし、すべてのクラスで、すべてのテストの前にコードを実行する方法はありますか?

テストが特定のデータベース接続セットを使用することを確認したいのですが、テストを実行する前に、これらの接続のグローバルな 1 回限りのセットアップを行う必要があります。

0 投票する
1 に答える
2801 参照

java - JUnit5 でカスタム ランナーを実装する方法

JUnit4 @RunWith アノテーションと同様に、JUnit5 でテスト メソッド (前/後メソッドを含む) の実行を完全に制御する方法はありますか?

JUnit5 Arquillian 拡張機能をビルドしようとしていますが、Aquillian は基本的にコンテナー内で各テストを実行する必要があるため、JUnit5 拡張機能から Arquillian を実行すると問題が発生します。

私のコードはここにあります: BasicJunit5ArquillianTest.java

テストでは、すべてのメソッド (前/後を含む) を別のコンテナーで実行する必要があります。コンテナーは、別の JVM、リモート サーバー、組み込みサーバー、または分離されたものである可能性があります。私の拡張機能は beforeEach フックからテスト メソッドを実行し、Arquillian を使用してテスト クラスを転送し、それをLauncherFactory.create()を使用してコンテナーで実行し、テスト結果を収集して転送します。

問題は、テスト メソッドが 2 回実行されることです。通常の JUnit5 の実行と、beforeEach フックからの Arquillian 拡張を介して実行されます。Arquillian 経由でのみテストを実行し、メソッドの通常の実行をスキップしたいと考えています。

これは JUnit5 拡張機能で可能ですか? それとも、Jupiter テスト エンジンを拡張して、カスタム テスト エンジンを作成する必要がありますか?