Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerAnypoint Code Builder で実装プロジェクトとインテグレーションプロジェクトの MUnit テストを作成、実行、変更します。MUnit テストファイルが含まれるプロジェクトをインポートします。
MUnit は、「MUnit の概要」で説明されているように Mule アプリケーションで単体テストを作成および実行するための MuleSoft 単体テストフレームワークです。
MUnit を使用して、MUnit テストと MUnit テストスイートを作成します。MUnit テストは、<munit:test> 要素によって定義される個別のテストケースであり、Mule アプリケーションの機能をテストするための特定の検証とアサーションが含まれています。MUnit テストスイートは、複数の MUnit テストのコンテナです。これは、通常は /src/test/munit ディレクトリにある XML ファイルでテストを整理します。
Anypoint Code Builder には、テストを実行できる [Testing (テスト)] パネルが用意されています。テストスイートは、[Explorer] のプロジェクトディレクトリ /src/test/munit 内にもあります。IDE には、MUnit テストスイートを作成および維持するためのキャンバス、テストの状況を示す [Testing Results (テスト結果)] パネル、テストの状況を識別するログも表示されます。
Anypoint Extension Pack に含まれる Anypoint Code Builder - MUnit 拡張機能では、Anypoint Code Builder の MUnit 機能がサポートされています。拡張機能については、「Anypoint Extension Pack」を参照してください。
フローから、またはキャンバスか XML エディターを使用して、MUnit テストおよびテストスイートを設定します。
[Explorer] からプロジェクトの MUnit テストスイートを作成します。
[Explorer] で、/src/test/munit にプロジェクトを開きます。
munit フォルダーにスイートファイルを作成します。
munit フォルダーを右クリックし、[New MUnit Test Suite File (新規 MUnit テストスイートファイル)] を選択します。
スイートの名前を入力します (例: my-suite.xml)。
スコープとフロー構造のオプションを使用して新しいテストを作成するためのリンクを含むキャンバスが表示されます。
新しいスイートファイルには、XML 宣言 (<?xml>) と、<mule/> および <mule-config> 要素が含まれます。次に例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:munit="http://www.mulesoft.org/schema/mule/munit"
xmlns:munit-tools="http://www.mulesoft.org/schema/mule/munit-tools"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/munit http://www.mulesoft.org/schema/mule/munit/current/mule-munit.xsd
http://www.mulesoft.org/schema/mule/munit-tools
http://www.mulesoft.org/schema/mule/munit-tools/current/mule-munit-tools.xsd">
<munit:config name="my-suite.xml" />
</mule>
テストをカスタマイズするには、キャンバスからコンポーネントを選択します。
「munit:before-test」、「munit:after-test」などの Behavior コンポーネントを使用すると、テストの条件を設定できます。
Execution コンポーネント、「<flow-ref>」または「<munit:execution>」ブロック内のインラインフロー定義を使用すると、テストするアクションまたはプロセスを指定できます。
「munit:assert-that」などの Validation コンポーネントを使用すると、実行フェーズ後にアプリケーションの出力または状態をチェックして、期待される結果と一致していることを確認し、アプリケーションが意図したとおりに動作することを確認できます。
詳細は、MUnit Event Processorsを参照してください。
MUnit テストを作成するに進みます。
| Anypoint Code Builder では、キャンバスから MUnit テストスイートを作成するために MUnit 3.4.0 以降が必要です。 |
新規または既存のテストスイートで MUnit テストを作成します。flow コンポーネントを右クリックするか、キャンバスまたは XML エディターを使用して、MUnit テストを開始します。テスト設定に関する指針は、前提条件に記載されている MUnit ドキュメントを参照してください。
Mule アプリケーション内の特定のフローをテストするために設計された MUnit テストの基本構造を生成します。
Mule プロジェクトを開きます。
キャンバスで、flow コンポーネントを右クリックします。
[Create Test (テストを作成)] を選択します。
Anypoint Code Builder によって、選択したフローを対象とするテスト構造の新しい MUnit テストスイートファイルがプロジェクトの /src/test/munit フォルダーに作成されます。
MUnit テストスイートを作成するを参照してください。
エディターでテストスイート XML を開きます。
案内については、MUnit テストを開くを参照してください。
XML で、Ctrl+Space を押して使用可能なオプションを表示し、「munit」と入力します。例:

munit:test を選択し、スイートのテスト要素を挿入します。例:
<munit:test name="name" >
</munit:test>
名前や他の XML 要素を入力して、テストを作成します。
たとえば、次の例のような XML の行です。
<munit:test name="test-01-suite1">
<munit:validation>
<munit-tools:assert-equals actual='#["that"]' expected='#["this"]' />
</munit:validation>
</munit:test>
他の例については、MUnit の例を参照してください。
[Test (テスト)] パネルからテストを実行します。
案内については、MUnit テストを実行するを参照してください。
[Testing (テスト)] パネルまたは [Explorer] からテストスイート XML を開きます。
2025 年 2 月のリリース以降、IDE にはテストコンポーネントを含むキャンバスが表示されるか、新しいテストを作成するためのリンクが提供されます。
| Anypoint Code Builder では、キャンバスから MUnit テストスイートを作成するために MUnit 3.4.0 以降が必要です。 |
[Testing (テスト)] パネル - IDE のアクティビティバーから [Testing (テスト)] パネルを開きます。
MUnit テストスイートが含まれるプロジェクトを開きます。
([Testing (テスト)]) をクリックして、[Testing (テスト)] パネルを開きます。
スイートまたはテスト名をクリックするか、その上にマウスポインターを置き、
([Go to test (テストに移動)]) または強調表示された
([Go to test (テストに移動)]) をクリックし、テストが含まれる XML ファイルを開きます。
テスト名をクリックしても、XML ファイルが開きます。
Explorer - [Explorer] から、プロジェクトディレクトリで MUnit テストスイートファイルを見つけます。
MUnit テストスイートが含まれるプロジェクトを開きます。
アクティビティバーで、
([Explorer]) をクリックします。
src/main/test/munit に移動します。
テストスイート XML ファイルをクリックして、スイートのテストを表示します。
次のいずれかのオプションを使用して MUnit テストを実行します。
テストを実行すると、テストビルドが実行され、[Terminal (ターミナル)] にテストの進行状況が表示されます。すべてのテストが正常に実行されると、ビルドは成功します。それ以外の場合、ビルドは失敗します。
IDE の [Testing (テスト)] パネル、[Terminal (ターミナル)]、[Test Results (テスト結果)] パネルにテストの結果が表示されます。[Test Results (テスト結果)] パネルからタイムスタンプのあるログを利用することもできます。結果はいつでもクリアできます。
[Testing (テスト)] パネルから、すべてのテスト、スイートのすべてのテスト、1 つのテストを実行できます。[Testing (テスト)] パネルには、プロジェクトのすべての MUnit テストスイートがリストされます。
テストを実行する手順は、次のとおりです。
MUnit テストスイートが含まれるプロジェクトを開きます。
テストスイートを確認するには、MUnit テストを開くを参照してください。
アクティビティバーから、
([Testing (テスト)]) をクリックして、[Testing (テスト)] パネルを開きます。
アイコンが表示されていない場合、アクティビティバー内をクリックして [Testing (テスト)] を選択し、アイコンを表示します。
[Testing (テスト)] パネルから、3 つのレベルのいずれかでテストを実行します。
パネル"]
デバッグ機能を使用して/使用しないでテストを実行します。XML にブレークポイントが含まれていて、デバッグすることを選択した場合、ブレークポイントでテストの実行が停止します。デバッグについては、デバッグモードで MUnit テストを実行するを参照してください。
| 1 | すべてのスイート: すべてのスイートのすべてのテストを実行するには、[Run Tests (テストを実行)]、[Debug Tests (テストをデバッグ)]、または [Run Tests with Coverage (カバー率を使用してテストを実行)] アイコンをクリックします。 右クリックしメニューから同じオプションを選択できます。 |
| 2 | スイート: 1 つのスイートのすべてのテストを実行するには、スイートにマウスポインターを置くか、それをクリックし、[Run Test (テストを実行)]、[Debug Test (テストをデバッグ)]、または [Run Tests with Coverage (カバー率を使用してテストを実行)] アイコンをクリックします。 右クリックしメニューから同じオプションを選択できます。 |
| 3 | テスト: 1 つのテストを実行するには、テストスイートのテストにマウスポインターを置くか、それをクリックし、[Run Test (テストを実行)]、[Debug Test (テストをデバッグ)]、または [Run Tests with Coverage (カバー率を使用してテストを実行)] アイコンをクリックします。 |
右クリックしメニューから同じオプションを選択できます。
テストを監視して、テスト結果を確認します。
[Testing (テスト)] パネルと XML:
次の例では、実行中のテストが表示されています。
パネルと XML の実行中のテスト"]
テストの実行後、パネルと XML に結果が表示されます。
Terminal (ターミナル):
次の例は、実行されて失敗しているテストの進行状況を示しています。
================================================================================
=== Running suite: myTestSuiteEx3.xml ===
================================================================================
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Running test: test-03-suite3 +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
java.lang.AssertionError: at file: [myTestSuiteEx3.xml], line: [27]
Expected: "this" as String {encoding: "UTF-8", mediaType: "application/java; charset=UTF-8", mimeType: "application/java", class: "java.lang.String", contentLength: 4}
but: "that" as String {encoding: "UTF-8", mediaType: "application/java; charset=UTF-8", mimeType: "application/java", class: "java.lang.String", contentLength: 4} at (root)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] ===============================================================================
[INFO] MUnit Run Summary - Product: MULE_EE, Version: 4.6.0
[INFO] ===============================================================================
[INFO] >> myTestSuiteEx3.xml test result: Tests: 1, Errors: 0, Failures: 1, Skipped: 0
[INFO] --- test-03-suite3 <<< FAILED
[INFO]
[INFO] ===============================================================================
[INFO] > Tests: 1
[INFO] > Errors: 0
[INFO] > Failures: 1
[INFO] > Skipped: 0
[INFO] ===============================================================================
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 03:10 min
[INFO] Finished at: 2024-04-29T08:49:39-07:00
[INFO] ------------------------------------------------------------------------
テスト結果で失敗が示されている場合は、テストエラーを修正するに移動します。
テスト結果をクリアするには、テスト結果をクリアするを参照してください。
カバー率を使用して/使用しないでテストを実行します。テストスコープを追加して、Mule アプリケーションまたはフロー構造の特定の部分をテストし、実行コンテキストを定義します。

MUnit テストおよびテストスイートを作成するを参照してください。
カバー率を使用して MUnit テストを実行するを参照してください。
デバッグ機能を使用して/使用しないでテストを実行します。XML にブレークポイントが含まれていて、デバッグすることを選択した場合、ブレークポイントでテストの実行が停止します。デバッグについては、デバッグモードで MUnit テストを実行するを参照してください。
テストスイート XML からテストを実行する手順は、次のとおりです。
[Testing (テスト)] パネルから、プロジェクトのテストスイート XML ファイルを開きます。
[Testing (テスト)] パネルから開く方法に関する指針は、MUnit テストを開くを参照してください。
テストスイート XML ファイルの 1 つのテストまたはすべてのテストを実行します。

テストスイート XML の 1 つのテストを実行する手順は、次のとおりです。
テスト (munit:test) の XML が含まれる行にカーソルを置きます。
たとえば、次の例のような XML の行です。
<munit:test name="test-02-suite1">
<munit:validation>
<munit-tools:assert-equals actual='#["that"]' expected='#["this"]' />
</munit:validation>
</munit:test>
右クリックして、オプションを選択します。
Run Test at Cursor (カーソル位置でテストを実行)
Debug Test at Cursor (カーソル位置でテストをデバッグ)
Run Test at Cursor with Coverage (カバー率を使用してカーソル位置でテストを実行)
これらのメニュー項目が表示されていない場合、*[Testing (テスト)]* パネルで
または強調表示された
(*[Go to test (テストに移動)]*) から XML ファイルを開いてください。
テストスイート XML のすべてのテストを実行する手順は、次のとおりです。
XML ファイルにカーソルを置きます。
右クリックして、オプションを選択します。
Run Tests in Current File (現在のファイルでテストを実行)
Debug Tests in Current File (現在のファイルでテストをデバッグ)
Run Tests with Coverage in Current File (現在のファイルでカバー率を使用してテストを実行)
これらのメニュー項目が表示されていない場合、*[Testing (テスト)]* パネルで
または強調表示された
(*[Go to test (テストに移動)]*) から XML ファイルを開いてください。
[Testing (テスト)]、[Terminal (ターミナル)]、[Testing Results (テスト結果)] パネルで実行中のテストの状況を確認します。例を参照してください。
テスト結果をクリアするには、テスト結果をクリアするを参照してください。
[Run and Debug (実行とデバッグ)] パネルから MUnit 起動設定を使用して MUnit テストを実行します。
MUnit 起動設定を作成して実行します。
[Run and Debug (実行とデバッグ)] パネルを開きます。
アクティビティバーの
(Run and Debug (実行とデバッグ)) アイコンをクリックする。
キーボードショートカットを使用する。
Mac: Cmd+Shift+d
Windows: Ctrl+Shift+d
デスクトップ IDE で、[View (表示)] > [Run (実行)] を選択する。
クラウド IDE で、
(メニュー) アイコンをクリックし、[View (表示)] > [Run (実行)] を選択する。
起動設定を launch.json に追加します。
(歯車アイコン) をクリックして、[launch.json] タブを開きます。
デフォルト設定は次のようになります。
{
"version": "0.2.0",
"configurations": [
{
"type": "mule-xml-debugger",
"request": "launch",
"name": "Debug Mule Application",
"mule.project": "${workspaceFolder}",
"mule.runtime.args": "${config:mule.runtime.defaultArguments}"
}
]
}
launch.json ファイルで、配列の最初のオブジェクトの後にカンマを追加し、Ctrl+Space を押してオートコンプリートメニューを開き、[MUnit Debug Launch (MUnit デバッグ起動)] を選択して MUnit 起動設定を追加します。例:

この操作により、[Munit Debug Tests (Munit テストデバッグ)] という名前の新しい JSON オブジェクトがファイルに追加されます。例:
{
"version": "0.2.0",
"configurations": [
{
"type": "mule-xml-debugger", (1)
"request": "launch",
"name": "Debug Mule Application",
"mule.project": "${workspaceFolder}",
"mule.runtime.args": "${config:mule.runtime.defaultArguments}"
},
{
"type": "munit-xml-debugger", (2)
"request": "launch",
"name": "Munit Run Tests",
"mule.project": "${workspaceFolder}",
"munit.runtime.args": "${config:munit.runtime.defaultArguments}",
"munit.runtime.debugger.version": "${config:munit.runtime.debugger.version}",
"munit.debug": "false"
}
]
}
| 1 | [Debug Mule Application (Mule アプリケーションをデバッグ)] という名前の標準デバッガーのランチャー。 |
| 2 | [Munit Run Tests (Munit テスト実行)] という名前の MUnit デバッガーのランチャー。 |
設定を launch.json に保存します。
[MUnit Debug Tests (Munit テストデバッグ)] 起動設定から MUnit テストを実行します。
[Run and Debug (実行とデバッグ)] パネルの起動メニューから [MUnit Debug Tests (Munit テストデバッグ)] を選択します。例:
の選択"]
[Run an Debug] パネルの
([launch (起動)]) をクリックして、[MUnit Debug Tests (Munit テストデバッグ)] を実行します。
MUnit テストが実行されていることを確認します。例を参照してください。
テストまたは Mule アプリケーションの XML にブレークポイントを追加したら、デバッグモードでテストを実行します。Mule がブレークポイントに達したら、[Run and Debug (実行とデバッグ)] パネルで変数を確認できます。
MUnit テストスイートが含まれるプロジェクトを開きます。
Mule アプリケーションまたはテストスイートの XML にブレークポイントを追加します。
ブレークポイントと Mule イベントに関する指針は、Mule アプリケーションのデバッグを参照してください。
デバッグコマンドで次のいずれかのオプションを使用してテストを実行します。
[Testing (テスト)] パネルから、任意のレベル (すべてのテスト、スイートのすべてのテスト、1 つのテスト) で
([Debug test (テストをデバッグ)]) をクリックします。
詳細は、[Testing (テスト)] パネルからテストを実行するを参照してください。
スイート XML から、右クリックメニューを使用してテストを実行します。
詳細は、MUnit 設定 XML ファイルからテストを実行するを参照してください。
[Run and Debug (実行とデバッグ)] パネルの起動設定から、テストを実行します。
案内については、MUnit 起動設定を使用してテストを実行するを参照してください。
ビルドプロセスがブレークポイントに達したら、アクティビティバーから
([Run and Debug (実行とデバッグ)]) をクリックして変数 (Mule イベント変数やテストパラメーターを含む) を確認します。例:

データを調べて、問題に対処します。
デフォルトでは、タイムアウト期間を過ぎると実行中のテストは失敗します。デバッグセッションがテストのブレークポイントに達したら、テストとビルドはタイムアウトで失敗します。「タイムアウト属性のテスト」を参照してください。
カバー率を使用してテストを実行し、一連の MUnit テストによって Mule アプリケーションがどの程度実行されるかを測定します。
MUnit テストスイートが含まれるプロジェクトを開きます。
カバー率で次のいずれかのオプションを使用してテストを実行します。
キャンバスから、[Run Test (テストを実行)] および [Run Test with Coverage (カバー率を使用してテストを実行)] をクリックします。
[Testing (テスト)] パネルにテストカバー率の結果が表示されます。 詳細は、キャンバスからテストを実行するを参照してください。
[Testing (テスト)] パネルから、任意のレベル (すべてのテスト、スイートのすべてのテスト、1 つのテスト) で [Run Test with Coverage (カバー率を使用してテストを実行)] をクリックします。
詳細は、[Testing (テスト)] パネルからテストを実行するを参照してください。
スイート XML から、右クリックしてテストを実行するオプションを選択します。
詳細は、MUnit 設定 XML ファイルからテストを実行するを参照してください。
テストスイートの実行後、次のいずれかのオプションを使用してカバー率の結果を表示します。
アクティビティバーで、
([Testing (テスト)]) をクリックして、[Testing (テスト)] パネルを開きます。[Test Coverage (テストカバー率)] パネルには、ディレクトリとファイルのカバー率が表示されます。

アクティビティバーで、
([Explorer]) をクリックします。IDE にディレクトリとファイルのカバー率が表示されます。
数値とグラフィックのパーセントは両方とも、MUnit テストによって実行されたイベントプロセッサーのパーセントを示します。
テストを実行したら、エラーを修正します。
[Testing (テスト)] パネルから、失敗したテストの名前をクリックして、XML のテストエラーを確認します。
XML の例のエラーでは、java.lang.AssertionError というエラーが識別されます。
想定される結果 (赤で強調表示):
"yes" as String {encoding: "UTF-8", mediaType: "application/java;
charset=UTF-8", mimeType: "application/java",
class: "java.lang.String", contentLength: 3}
実際の結果 (緑で強調表示):
"no" as String {encoding: "UTF-8", mediaType: "application/java;
charset=UTF-8", mimeType: "application/java",
class: "java.lang.String", contentLength: 2} at (root)
[Test Results (テスト結果)] パネルでテストログの失敗したテストをクリックしてテストを確認することもできます。例:
パネルのエラー"]
エラーを修正します。
エラーを確認したら、[x] アイコンをクリックして、XML のエラーメッセージを閉じます。例:

想定される出力が生成されるように XML を編集します。
たとえば、この例の失敗したテストケースでは、"no" ではなく "yes" が返される必要があります。
エラーを修正したら、テストを再実行して、修正が機能していることを確認します。
XML からテストを再実行するには、テストの
([Test failure (失敗をテスト)]) をクリックします。
[Testing (テスト)] パネルからテストを再実行するには、
([Run test (テストを実行)]) をクリックします。
[Testing Results (テスト結果)] パネルからテストを再実行するには、パネルを開き、テストログの失敗したテストの名前をクリックし、テストログから
([Run test (テストを実行)]) をクリックします。
MUnit XML 設定に関する指針は、MUnit Test Structure Fundamentals and MUnit Event Processorsを参照してください。
テスト結果をクリアするには、テスト結果をクリアするを参照してください。
Anypoint Studio および Anypoint Code Builder で作成された、インテグレーションまたは実装の Mule プロジェクトには、MUnit テストを含めることができます。
プロジェクトを Anypoint Code Builder にインポートして開くには、IDE へのプロジェクトのインポートを参照してください。
Anypoint Code Builder にインポートする前に Anypoint Studio からプロジェクトをエクスポートするには、「Studio からのプロジェクトのエクスポート」のいずれかの手順を使用します。
Anypoint Exchange の MUnit テストが含まれるサンプルまたはテンプレートをインポートするインテグレーションを開始するには、「インテグレーションプロジェクトを作成する」を参照してください。
インテグレーションプロジェクトを作成する場合、空のプロジェクトから始める代わりに [Template or Example Project (テンプレートまたはサンプルプロジェクト)] をクリックします。これにより、テストが含まれるアセットをプロジェクトにインポートできます。
テストが完了したら、[Testing (テスト)] パネルからテスト結果をクリアできます。また、不要な場合はログをクリアすることもできます。
[Testing (テスト)] パネルから、[Views and More Actions (…) (表示およびその他のアクション (…))] をクリックして、[Clear All Results (すべての結果をクリア)] を選択します。
[Test Results (テスト結果)] パネルから、
([Clear All Results (すべての結果をクリア)]) をクリックします。例:
パネルからのテスト結果のクリア"]
Mule フローの個々のコンポーネントに焦点を当てるには、次のプロセッサーを MUnit テストに追加します。
| プロセッサー | 説明 |
|---|---|
|
フロー内にイベントプロセッサーのモックを作成し、イベントプロセッサーを実行せずにその動作をシミュレーションします。 |
|
フロー内の特定のイベントプロセッサーの動作を変更せずに、その実行前と実行後に何が起こるかを観察します。 |
テストスイートで、[+] をクリックします。
フローを観察するように設計されたプロセッサーを検索します (テストで特定のプロセッサーと属性を対象にするを参照)。
[+] アイコンをクリックして、観察するプロセッサーの種別を選択します。

観察するプロセッサーのコンポーネントと属性を選択します。

[Add (追加)] をクリックして、プロセッサーをテストスイートに追加します。
プロセッサーは XML エディターとキャンバスに表示されます。
プロセッサーとその属性を選択するときは、次の点を考慮してください。
1 つのプロセッサーの設定は、フロー内の同じ種別のすべてのプロセッサーに適用されます。
同じ種別のすべてのプロセッサーの属性がリストされます。
MUnit ドキュメントには、いくつかの例が記載されています。MUnit Cookbookを参照してください。
次の MUnit テストの例では、payload が文字列 "Example" であるかどうかを検証します。
<munit:test name="my-test" doc:id="e536ea1f" description="Test Example">
<munit:execution >
<flow-ref doc:name="Reference to Main Flow" doc:id="058d41ef" name="mainFlow"/>
</munit:execution>
<munit:validation >
<munit-tools:assert-equals actual="#[payload]" expected="Example"
message="The payload is expected to be 'Example'."/>
</munit:validation>
</munit:test>
munit:execution、munit:validation、および他の MUnit テスト要素については、MUnit Test Structure Fundamentals and MUnit Event Processorsを参照してください。