3.1.16. リクエスト単体テストの実施方法(HTTP同期応答メッセージ受信処理)

リクエスト単体テストの実施方法は、リクエスト単体テストの実施方法(同期応答メッセージ受信処理)を参照すること。

本項では、リクエスト単体テストの実施方法(同期応答メッセージ受信処理)と記述方法が異なる箇所の解説を行う。

3.1.16.1. テストデータの書き方

3.1.16.1.1. テストショット一覧

LIST_MAPのデータタイプで1テストメソッド分のテストショット表を記載する。IDは、testShotsとする。

HTTP同期応答メッセージ受信処理特有の内容について以下に示す。

カラム名 説明 必須
diConfig HTTP同期応答メッセージ受信リクエスト単体テスト用のコンポーネント設定ファイルへのパスを記載する
(例:http-messaging-test-component-configuration.xml)。
必須
expectedStatusCode JSON及びXMLデータ形式使用時は空欄にする。 必須
requestPath アクションを実行するためのURLから、ホスト名を抜いた部分。
例えばアクション実行のURLが「http://127.0.0.1/msgaction/ss11AC/RM11AC0102」であれば、
「/msgaction/ss11AC/RM11AC0102」となる。
必須
userId 認証認可チェックに使用するユーザID 必須

補足

JSON及びXMLデータ形式使用時は、ステータスコードの比較も、Excelファイルのメッセージボディとの比較で行う。フレームワーク制御ヘッダもメッセージボディに含まれるためである。

3.1.16.1.2. 各種準備データ

テスト実施に際して必要となる各種準備データの記述方法を説明する。 バッチでは、データベース、リクエストメッセージの準備を行う。

3.1.16.1.2.1. リクエストメッセージ

テストの入力データとなる要求電文を記載する。以下に例を示す。


MESSAGE=setUpMessages

// 共通情報(ディレクティブ、フレームワーク制御ヘッダ)

text-encoding Windows-31J  
requestId RM11AC0102  

// メッセージボディ

【XML】

no XML1 XML2 XML3
  全半角 全半角 全半角
  32767 32767 32767
1 <?xml version=”1.0” encoding=”UTF-8”?>
<request>
<userId>0000000101</userId>
<resendFlag>0</resendFlag>
<dataKbn>0</dataKbn>
</request>

【JSON】

no JSON
  全半角
  32767
1

{

“userId” : “0000000101”,
“resendFlag” : “0”,
“dataKbn” : “0”,

}


  1. 先頭行
テスト対象リクエストに対する要求電文を準備する。名前は、MESSAGE=setUpMessages固定とする。
  1. 共通情報

名前の次行以降には以下の情報を記載する。これらの値は、リクエストメッセージの全メッセージで共通の値となる。

  • ディレクティブ
  • フレームワーク制御ヘッダ

書式は、key-value形式である。

キー

重要

フレームワーク制御ヘッダの項目をPJで変更している場合、 以下のようにコンフィグファイルに reader.fwHeaderfields というキーでフレームワーク制御ヘッダ名を指定する必要がある。

# フレームワーク制御ヘッダ名をカンマ区切りで指定する。
reader.fwHeaderfields=requestId,addHeader
  1. メッセージボディ

フレームワーク制御ヘッダ以降のメッセージを記載する。

記述内容 備考
1行目 フィールド名称 先頭セルは”no”とする。
2行目 データタイプ 先頭セルは空白
3行目 フィールド長 先頭セルは空白
4行目以降 XMLデータ
および
JSONデータ
先頭セルは1からの通番
フィールドを跨いで記載することも可能

補足

JSON及びXMLデータ形式使用時は、1Excelシートに1テストケースのみ記述すること。

これはメッセージボディについて、Excelの各行の文字列長が同一であることを期待しているというNTFの制約によるものである。JSON及びXMLデータ形式は、要求電文の長さがリクエスト毎に異なるのが一般的なので、事実上1テストケースしか記述できない。

重要

フィールド名称に重複した名称は許容されない。 例えば、「氏名」というフィールドが2つ以上存在してはならない。 (通常、このような場合は「本会員氏名」と「家族会員氏名」のようにユニークなフィールド名称が付与される)

3.1.16.1.3. 各種期待値

3.1.16.1.3.1. レスポンスメッセージ

リクエストメッセージと同じ。

ただし、名前がMESSAGE=expectedMessagesとなる。

応答電文のフィールド長は”-“(ハイフン)を設定する。

../../../../../../_images/http_real_test_data.png