Flex Gateway新着情報
Governance新着情報
Monitoring API Managerテストレコーダーを使用すると、処理フローを記録してから、取得されたイベントに基づいてユニットテストを設定できます。
テストレコーダーは、Anypoint Studio でアプリケーションの実行中に実際のデータを取得します。フロー実行を取得することで、MUnit では自動的に MUnit テストが生成され、ユーザーはテストに必要なモックやアサーションを設定できます。完全な実例は、「Exchange からのテストの記録の例」を参照してください。
次の表に、テストレコーダーを使用するのに必要な製品バージョンを示します。
製品 | バージョン |
---|---|
Anypoint Studio |
7.5.0 以降 |
MUnit |
2.2.5 以降 |
MUnit Anypoint Studio プラグイン |
2.5.0 以降 |
Mule Runtime Engine |
4.3.0 以降 |
MUnit テストを作成するときに、テストレコーダーには次の制限があります。
フローの内部で Mule エラーが発生する場合や、受信イベントにすでにエラーが存在する場合、それらが on error continue エラーハンドラーで制御される場合であっても、フローのテストは作成できません。
記録されたフローの実行は正常に終了しますが、アプリケーションが停止されているため、結果は宛先に到達しません。
spy
プロセッサーまたは assert
プロセッサーでランダムデータ、時間に依存する情報 (タイムスタンプなど)、並列プロセスの結果の値をアサートするように設定すると、それらの値は実行するたびに変化するため、テストを実行するたびに検証が失敗します。
並列プロセスの結果の値をモックすると、テスト内の後続のプロセッサーの実行で実際のデータとモックされたデータが混在します。
レコーダーは、フロー内での再帰やループなどのデータ反復をサポートしていますが、テスト対象のデータの構造が反復内で変化するケースはサポートしていません。
レコーダーは、foreach
プロセッサーの前または内部のメッセージのモックはサポートしていません。
テストレコーダーを使用してフローに対するテストを生成する場合、フローに含まれているパラメーターしかモックできません。テストレコーダー UI を使用して、サブフローまたは参照されるフローのパラメーターをモックすることはできません。プロジェクトで他のプロセスのサブフローのパラメーターをモックする必要がある場合は、テストの作成後にモック元のコンポーネントを変更できます。