1.7. Red Hat build of Quarkus アプリケーションのテスト
Quarkus Getting Started プロジェクトをコンパイルした後、JUnit 5 フレームワークを使用してアプリケーションをテストすることで、それが期待通りに実行するか確認できます。
Quarkus アプリケーションの継続的なテストを有効にすることもできます。詳細は、継続的なテストの有効化と実行 を参照してください。
Quarkus プロジェクトは、pom.xml ファイルに次の 2 つのテスト依存関係を生成します。
-
quarkus-junit5: JUnit 5 テストフレームワークを制御する@QuarkusTestアノテーションを提供するため、テストに必要です。 -
rest-assured:rest-assured依存関係は必須ではありませんが、HTTP エンドポイントをテストする便利な方法として使用できるため、統合されています。rest-assured依存関係により正しい URL が自動的に設定されるため、設定は必要ありません。
サンプル pom.xml ファイル:
これらのテストは REST-Assured フレームワークを使用しますが、必要に応じて別のライブラリーも使用できます。
前提条件
- Quarkus Getting Started プロジェクトをコンパイルしている。詳細は、Red Hat build of Quarkus Getting Started プロジェクトのコンパイルと起動 を参照してください。
手順
生成された
pom.xmlファイルを開き、コンテンツを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のプロパティーの値に注意してください。
-
アプリケーションがテストで必ず正しいログマネージャーを使用するように、
java.util.logging.managerシステムプロパティーが設定されます。 -
maven.homeプロパティーは、プロジェクトに適用するカスタム Maven 設定を保存できるsettings.xmlファイルの場所を参照します。
-
アプリケーションがテストで必ず正しいログマネージャーを使用するように、
src/test/java/org/acme/quickstart/GreetingResourceTest.javaファイルを以下の内容に一致するように編集します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記QuarkusTestランナーを使用することで、テストを開始する前に JUnit にアプリケーションを起動するよう指示します。Maven からこれらのテストを実行するには、以下のコマンドを入力します。
./mvnw test
./mvnw testCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記IDE からテストを実行することもできます。その場合は、まずアプリケーションを停止してください。
デフォルトでは、テストはポート
8081で実行されるため、実行中のアプリケーションと競合しません。Quarkus では、RestAssured依存関係はこのポートを使用するように設定されています。注記別のクライアントを使用する場合は、
@TestHTTPResourceアノテーションを使用して、テスト済みアプリケーションの URL をTestクラスのフィールドに直接注入します。このフィールドには、String、URL、またはURIの型を使用できます。@TestHTTPResourceアノテーションにテストパスを入力することもできます。たとえば、/myservletにマップされたサーブレットをテストするには、以下の行をテストに追加します。@TestHTTPResource("/myservlet") URL testUrl;@TestHTTPResource("/myservlet") URL testUrl;Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
必要な場合は、
quarkus.http.test-port設定プロパティーにテストポートを指定します。