第34章 Mock


producer のみサポート対象

分散および非同期処理のテストは、特に困難です。MockTest、および Dataset のエンドポイントは Camel Testing Framework で優れた機能を提供し、強力な Bean 統合とともに エンタープライズ統合パターン と Camel の幅広いコンポーネントを使用してユニットおよび統合テストを簡素化します。

Mock コンポーネントは、強力な宣言型テストメカニズムを提供します。これは、テストの開始前に Mock エンドポイントで宣言的期待を作成できるという点で jMock と似ています。次に、テストが実行されます。これは通常、1 つ以上のエンドポイントに対してメッセージを実行し、最終的にはシステムが期待どおりに機能するようにテストケースで期待をアサートできます。

これにより、以下のようなさまざまなことをテストできます。

  • 正しい数のメッセージが各エンドポイントで受信されます。
  • 正しいペイロードが適切な順序で受信されます。
  • メッセージは、一部の式を使用して注文テスト関数を作成し、順番にエンドポイントに到達します。
  • メッセージは、特定のヘッダーに特定の値がある場合や、そのメッセージが XPath または XQuery 式を評価するなど、一部の述語と一致するなど、何らかの述語に一致します。
注記

Mock エンドポイントである Test エンドポイント もありますが、2 番目のエンドポイントを使用して想定されるメッセージ本文のリストを提供し、Mock エンドポイントアサーションを自動的に設定します。つまり、File または データベース の一部のサンプルメッセージからアサーションを自動的に設定する Mock エンドポイントです。以下に例を示します。

注記

Mock エンドポイントは、受信したエクスチェンジを無限にメモリーに保持します。
Mock はテスト用に設計されていることに注意してください。Mock エンドポイントをルートに追加すると、エンドポイントに送信された各エクスチェンジは、明示的にリセットするか JVM が再起動するまで、メモリーに保存されます(後続の検証を許可します)。高いボリュームや大きなメッセージを送信する場合は、メモリーを過剰に使用する可能性があります。目的が deployable ルートをインラインでテストする場合は、Mock エンドポイントをルートに直接追加するのではなく、テストで NotifyBuilder または AdviceWith を使用することを検討してください。新しいオプションは retainFirst と retainLast の 2 つあり、Mock エンドポイントがメモリーに保持するメッセージの数を制限するために使用できます。

34.1. URI 形式

mock:someName[?options]
Copy to Clipboard Toggle word wrap

someName は、エンドポイントを一意に識別する任意の文字列にすることができます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat