Mulesoft-testing-with-munit
MuleSoft-MUnitを使用したテスト
ユニットテストは、ソースコードの個々のユニットをテストして、それらが使用に適しているかどうかを判断できる方法であると理解しています。 Javaプログラマーは、Junitフレームワークを使用してテストケースを作成できます。 同様に、MuleSoftにはMUnitと呼ばれるフレームワークもあり、APIと統合の自動テストケースを作成できます。 継続的な統合/展開環境に最適です。 MUnitフレームワークの最大の利点の1つは、MavenフレームワークをMavenおよびSurefireと統合できることです。
MUnitの機能
以下は、Mule MUnitテストフレームワークの非常に便利な機能の一部です-
- MUnitフレームワークでは、MuleコードとJavaコードを使用してMuleテストを作成できます。
- MuleアプリとAPIは、Anypoint Studio内でグラフィカルまたはXMLで設計およびテストできます。
- MUnitを使用すると、テストを既存のCI/CDプロセスに簡単に統合できます。
- 自動生成されたテストとカバレッジレポートを提供します。したがって、手作業は最小限です。
- また、ローカルDB/FTP/メールサーバーを使用して、CIプロセスを通じてテストの移植性を高めることもできます。
- テストを有効または無効にすることができます。
- プラグインを使用してMUnitフレームワークを拡張することもできます。
- これにより、メッセージプロセッサの呼び出しを確認できます。
- MUnitテストフレームワークを使用して、エンドポイントコネクタとフローインバウンドエンドポイントを無効にすることができます。
- ESB Muleスタックトレースでエラーレポートを確認できます。
Mule MUnitテストフレームワークの最新リリース
MUnit 2.1.4は、Mule MUnitテストフレームワークの最新リリースです。 次のハードウェアおよびソフトウェア要件が必要です-
- MS Windows 8+
- Apple Mac OS X 10.10以降
- Linux
- Java 8
- Maven 3.3.3、3.3.9、3.5.4、3.6.0
Mule 4.1.4およびAnypoint Studio 7.3.0と互換性があります。
MUnitおよびAnypoint Studio
説明したように、MUnitはAnypoint studioに完全に統合されており、MuleアプリとAPIをグラフィカルに、またはAnypoint studio内のXMLで設計およびテストできます。 言い換えれば、Anypoint Studioのグラフィカルインターフェイスを使用して、次のことができます-
- MUnitテストの作成および設計用
- テストを実行するために
- テスト結果とカバレッジレポートの表示用
- テストのデバッグ用
それでは、各タスクを1つずつ説明していきましょう。
MUnitテストの作成と設計
新しいプロジェクトを開始すると、プロジェクトに src/test/munit という新しいフォルダーが自動的に追加されます。 たとえば、新しいMuleプロジェクト、つまり test_munit を開始しました。下の画像を見るとわかるように、プロジェクトの下に上記のフォルダーが追加されています。
さて、新しいプロジェクトを開始したら、Anypoint Studioで新しいMUnitテストを作成する2つの基本的な方法があります-
- フローを右クリックして-この方法では、特定のフローを右クリックし、ドロップダウンメニューからMUnitを選択する必要があります。
- ウィザードを使用して-この方法では、テストを作成するためにウィザードを使用する必要があります。 これにより、ワークスペース内の任意のフローのテストを作成できます。
「フローを右クリック」する方法を使用して、特定のフローのテストを作成します。
まず、次のようにワークスペースにフローを作成する必要があります-
次に、このフローを右クリックし、MUnitを選択して、以下に示すように、このフローのテストを作成します-
フローが存在するXMLファイルにちなんで名前が付けられた新しいテストスイートが作成されます。 この場合、 test_munit-test-suite は、以下に示すように、新しいテストスイートの名前です-
上記のメッセージフローのXMLエディターは次のとおりです-
これで、Muleパレットからドラッグして MUnit メッセージプロセッサをテストスイートに追加できます。
ウィザードを使用してテストを作成する場合は、[ファイル]→[新規]→[MUnit]を実行すると、次のMUnitテストスイートが表示されます-
テストの構成
Mule 4には、2つの新しいセクション、つまり MUnit と MUnit Tools があり、すべてのMUnitメッセージプロセッサがまとめられています。 MUnitテスト領域で任意のメッセージプロセッサをドラッグできます。 以下のスクリーンショットに示されています-
今、あなたがスーツの構成を編集したり、Anypoint Studioでテストしたい場合は、以下の手順に従う必要があります-
ステップ1
*Package Explorer* に移動し、スイートまたはテストの* .xmlファイル*を右クリックします。 次に、*プロパティ*を選択します。
ステップ2
次に、[プロパティ]ウィンドウで[実行/デバッグ設定 s]をクリックする必要があります。 この後、[新規]をクリックします。
- ステップ3 *
最後のステップで、「構成タイプの選択」ウィンドウの下にある「MUnit」をクリックし、「OK」をクリックします。
テストを実行する
テストだけでなくテストスイートも実行できます。 最初に、テストスイートの実行方法を確認します。
テストスイートの実行
テストスイートを実行するには、テストスイートが存在するMule Canvasの空の部分を右クリックします。 ドロップダウンメニューが開きます。 次に、以下に示すように、* MUnitスイートを実行*をクリックします-
後で、コンソールで出力を確認できます。
テストを実行する
特定のテストを実行するには、特定のテストを選択して右クリックする必要があります。 テストスイートの実行中に取得したのと同じドロップダウンメニューが表示されます。 次に、以下に示すように、* MUnitテストの実行*オプションをクリックします-
その後、出力がコンソールに表示されます。
テスト結果の表示と分析
Anypoint Studioは、左側のエクスプローラーペインの[MUnit]タブにMUnitテスト結果を表示します。 以下に示すように、緑色で成功したテストと赤色で失敗したテストを見つけることができます-
カバレッジレポートを表示して、テスト結果を分析できます。 カバレッジレポートの主な機能は、MUnitテストのセットによってMuleアプリケーションがどれだけ正常に実行されたかに関するメトリックを提供することです。 MUnitカバレッジは基本的に、実行されるMUnitメッセージプロセッサの量に基づいています。 MUnitカバレッジレポートは、次のメトリックを提供します-
- アプリケーション全体のカバレッジ
- リソースカバレッジ
- フローカバレッジ
カバレッジレポートを取得するには、以下に示すように、[MUnit]タブの[レポートの生成]をクリックする必要があります-
テストのデバッグ
テストだけでなくテストスイートもデバッグできます。 最初に、テストスイートをデバッグする方法を見ていきます。
テストスイートのデバッグ
テストスイートをデバッグするには、テストスイートが存在するMule Canvasの空の部分を右クリックします。 ドロップダウンメニューが開きます。 今、下の画像に示すように*デバッグMUnitスイート*をクリックしてください-
その後、コンソールで出力を確認できます。
テストのデバッグ
特定のテストをデバッグするには、特定のテストを選択して右クリックする必要があります。 テストスイートのデバッグ中に取得したのと同じドロップダウンメニューが表示されます。 ここで、* MUnitテストのデバッグ*オプションをクリックします。 以下のスクリーンショットに示されています。