# cMock

ルートとメディエーションルールをテストするために、メッセージの生成とメッセージのエンドポイントをシミュレーションします。

詳細は、Apache Camelのドキュメンテーションhttps://camel.apache.org/components/latest/を参照してください。

## cMockの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているcMockを設定するために使われます。

標準のcMockコンポーネントは、Testingファミリーに属しています。

## 基本設定

| プロパティ | 説明 |
| --- | --- |
| [Validate message count] (メッセージカウントの検証) | このチェックボックスをオンにして、各エンドポイントで正しい数のメッセージが受信されることをテストします。[expected number] (予想数)フィールドに予想されるメッセージ番号を指定します。 |
| [Header / Validate message header] (ヘッダー/メッセージヘッダーの検証) | このチェックボックスをオンにして、各エンドポイントで正しいメッセージヘッダーが受信されることをテストします。 |
| [Header / Use File] (ヘッダー/ファイルの使用) | このオプションは、[Validate message header] (メッセージヘッダーの検証)チェックボックスがオンの場合に表示されます。このオプションを選択して、ファイルから予想されるメッセージヘッダーを指定し、[File name] (ファイル名) フィールドにファイルの名前とパスを二重引用符で囲んで入力します。 |
| [Header / Use Inline Table] (ヘッダー/インラインテーブルを使用) | このオプションは、[Validate message header] (メッセージヘッダーの検証)チェックボックスがオンの場合に表示されます。このオプションを選択して、テーブルから予想されるメッセージヘッダーを指定します。必要な数の行を追加し、ヘッダーの名前と値をテーブルに入力します。 |
| [Body / Validate message bodies] (ボディ/メッセージボディの検証) | このチェックボックスをオンにして、各エンドポイントで正しいメッセージボディが受信されることをテストします。 |
| [Body / Use File] (ボディ/ファイルの使用) | このオプションは、[Validate message bodies] (メッセージボディの検証)チェックボックスがオンの場合に表示されます。このオプションを選択して、ファイルから予想されるメッセージボディを指定し、[File name] (ファイル名) フィールドにファイルの名前とパスを二重引用符で囲んで入力します。 |
| [Body / Use Inline Table] (ボディ/インラインテーブルを使用) | このオプションは、[Validate message bodies] (メッセージボディの検証)チェックボックスがオンの場合に表示されます。このオプションを選択して、テーブルから予想されるメッセージボディを指定します。必要な数の行を追加し、メッセージボディをテーブルに入力します。 |
| [Simulate] (シミュレーション) | このオプションは、cMockがメッセージプロデューサーとして使われている場合に表示されます。このチェックボックスをオンにしてメッセージの生成をシミュレーションし、cProcessorコンポーネントを選択して、[Use existing cProcessor] (既存のcProcessorを使用)リストにメッセージを生成します。 |
| [Wait time (in millis)] (待機時間(ミリ秒)) | このオプションは、cMockを使ってテスト出力結果を確認する時に表示されます。cMockが結果の到着を待機する時間をミリ秒単位で指定します。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | cMockは、ルートで開始、中間、終了のコンポーネントとして使用できます。 |
| 制限事項 | cMockコンポーネントは、ルートをテストするために設計されています。メッセージルーティングでcMockを使うことはお勧めできません。ルートにcMockを追加すると、ルートに送信された各交換は、明示的にリセットされるか、JVMが再起動されるまで、(後で検証できるように)メモリに保存されます。大量に送信する場合 、またはメッセージが大きい場合、メモリが過剰に使われる可能性があります。ルートのテスト方法の詳細は、[テストケースを使用したルートをテスト](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/testing-routes-using-test-cases)をご覧ください。 |