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”,}
- 先頭行
テスト対象リクエストに対する要求電文を準備する。名前は、MESSAGE=setUpMessages
固定とする。
- 共通情報
名前の次行以降には以下の情報を記載する。これらの値は、リクエストメッセージの全メッセージで共通の値となる。
- ディレクティブ
- フレームワーク制御ヘッダ
書式は、key-value形式である。
キー 値
重要
フレームワーク制御ヘッダの項目をPJで変更している場合、
以下のようにpropertiesファイルに reader.fwHeaderfields
というキーでフレームワーク制御ヘッダ名を指定する必要がある。
# フレームワーク制御ヘッダ名をカンマ区切りで指定する。
reader.fwHeaderfields=requestId,addHeader
- メッセージボディ
フレームワーク制御ヘッダ以降のメッセージを記載する。
行 記述内容 備考 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
となる。
応答電文のフィールド長は”-“(ハイフン)を設定する。