メイン コンテンツをスキップする 補完的コンテンツへスキップ

テストケースの設定

手順

  1. cConfigコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  2. [Dependencies] (依存項目)ボックスの一覧で、xmlunit-1.6.jar (XMLUnitのウェブサイトから取得可能)を追加します。この依存項目は、XMLメッセージをテストする時に追加する必要があります。XMLメッセージの内容をスキーマに照合して検証するのに役立ちます。
  3. cProcessorコンポーネントをダブルクリックし、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  4. [Import] (インポート)エリアに次のコードを入力し、外部ライブラリーをインポートします。
    import org.custommonkey.xmlunit.Diff;
    import org.custommonkey.xmlunit.XMLUnit;
    import java.io.FileReader;
    import java.io.File;
    [Code] (コード)エリアに次のコードを入力し、受信したXMLファイルとターゲットXMLファイルを比較します。結果として、identicalまたはdifferentが返されます。
    String in_xml = exchange.getIn().getBody(String.class);
    
    FileReader reference_file1_reader = new FileReader(new File(context.reference_file1));
    
    Diff diff = XMLUnit.compareXML(in_xml, reference_file1_reader);
    
    exchange.getIn().setBody(diff.identical() ? "identical" : "different");
  5. 最初のcDatasetコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  6. [Arguments] (引数)テーブルに、値context.input_file1の行が自動的に追加されました。入力を1つのメッセージとして扱うには、もう1つの行"----------------"を追加します。
    cDatasetをメッセージプロデューサーとして使用している場合、入力メッセージに複数の行が含まれていると、cDataset[Basic settings] (基本設定)に行区切りを追加する必要があります。cDatasetによって各メッセージが分割され、テストが正しく処理されるように、行区切りは入力ファイル内の分割行と同じでなければなりません。入力ファイルに複数行のメッセージが1つしかない場合でも、1つのメッセージとして処理できるように、cDataset[Basic settings] (基本設定)に行区切りを設定する必要があります。行区切りを指定しない場合は、入力された各行は1つのメッセージとして扱われます。
  7. 最初のcMockコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  8. [Simulate] (シミュレーション)チェックボックスをオンにし、cProcessor_1を選択してメッセージを生成します。
  9. 2番目のcMockコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  10. [Validate message bodies] (メッセージボディの検証)チェックボックスをオンにし、[Use Inline Table] (インラインテーブルを使用)オプションをクリックします。[+]をクリックして[Message] (メッセージ)テーブルに1行を追加し、[Value] (値)フィールドに"identical" (同一)と入力します。
  11. [Test cases] (テストケース)ビューで、左パネルで[input_file1]をクリックし、右パネルの[File Browse] (ファイル参照)をクリックします。ここで説明した例の最初に示したXMLファイルを使用します。
    reference_file1の場合は、予想される結果を含むXMLファイルを参照します。ファイルは以下のようになっています。
    	<Customer>
    		<Number>1</Number>
    		<FirstName>Fred</FirstName>
    		<LastName>Landis</LastName>
    		<Address>
    			<Street>Oakstreet</Street>
    			<City>Boston</City>
    			<ZIP>23320</ZIP>
    			<State>MA</State>
    		</Address>
    	</Customer>

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。