Hitachi

Hitachi System Information Capture リファレンス 


7.3.11 バッチ用プラグイン

機能

バッチ実行フェーズ時のテスト処理を行います。

形式

ANSI C、C++の形式

#include <esfrw.h>
ESLONG  plg_func(ESFRW_BATCH_IF *parm)

「plg_func」部分には、システム内で一意の名称を指定してください。

説明

バッチ用プラグインは、バッチ実行フェーズでのテスト処理を行います。定義または開始終了プラグインで指定されたシナリオ実行回数分呼び出されるか、プラグインの戻り値でテスト終了指示が設定されるまで、本プラグインは繰り返し呼び出されます。

パラメタの内容

ESFRW_BATCH_IFのパラメタ内容

typedef struct es_frw_batch_interface {
  ESULONG         call_timing;  …………… 呼び出し契機
  char            reserve1[4];  …………… 予備領域
  ESFRW_COMMON    *cominf;  ………………… プラグイン共通情報
  ESFRW_CLIENT    *cltinf;  ………………… テスト実行単位情報
  ESULONG         error_level;  …………… エラーレベル
} ESFRW_BATCH_IF;

ESFRW_COMMONのパラメタ内容

typedef struct es_frw_cominfo {
  ESULONG         run_mode; ………………… フェーズ
  char            testid[32]; ……………… テスト識別子
  char            plg_name[32]; …………… プラグイン名称
  ESULONG         max_msg_sz ;……………… 最大電文サイズ
  ESULONG         protocol; ………………… プロトコル一覧
  ESULONG         tel_filetype; …………… 電文ファイルの種別
  ESULONG         res_filetype; …………… 結果ファイルの種別
  char            sel_mode; ………………… 実行モード
  char            reserve1[3];  …………… 予備領域
  char            user_file[512]; ………… シナリオファイル名
  ESULONG         execution_count;………… シナリオ実行回数
  ESULONG         parallel_count; ………… シナリオ同時実行数
  char            *esstop_execution; ……  esstopコマンド実行有無
} ESFRW_COMMON;

ESFRW_CLIENTのパラメタ内容

typedef struct es_frw_cltinfo {
ESFRW_CONTAINER *continf; …………………… 引継ぎ領域情報
char            client_id[16];……………… クライアント識別子
} ESFRW_CLIENT;

テーブル関連図

各テーブル間は以下のチェイン構造となります。

[図データ]

システム検証支援が値を設定するパラメタ項目

ESFRW_BATCH_IFのパラメタ項目

call_timing

プラグインの呼び出し契機を設定します。以下になります。

ESFRW_TIMING_BATCH:バッチ実行時

cominf

プラグインに共通する情報(フェーズ、テスト識別子など)を格納しているESFRW_COMMONアドレスを設定します。

cltinf

テスト実行単位の情報(引継ぎ情報など)を格納したESFRW_CLIENTアドレスを設定します。それ以外の場合はNULLを設定します。

error_level

ユーザが設定する項目です。システム検証支援はデフォルト値として、1を設定します。

ESFRW_COMMONのパラメタ項目

run_mode

フレームワークのフェーズを設定します。以下のどれかとなります。

ESFRW_RUNMODE_CREATE_C:電文作成フェーズ(PCAP)

ESFRW_RUNMODE_CREATE_A:電文作成フェーズ(キャプチャ)

ESFRW_RUNMODE_TEST_R:テスト実行フェーズ

ESFRW_RUNMODE_TEST_C:テスト実行フェーズ(PCAP)

test_id

システムテスト支援開始時に指定したテスト識別子を設定します。

plg_name

framework_definition定義の-pオプションのnameフラグメンバで指定したプラグイン名称を設定します。

max_msg_sz

framework_definition定義の-bオプションのmax_message_sizeフラグメンバで指定した最大電文サイズを設定します。

protocol

address_destinationで指定したプロトコルを設定します。以下の論理和となります。

ESFRW_PROT_TCP:TCP

ESFRW_PROT_HTTP:HTTP

tel_filetype

電文ファイルの種別を設定します。以下のどちらかの値となります。

ESFRW_FILE_AFL:蓄積ファイル

ESFRW_FILE_CSV:csvファイル

電文ファイルの種別は、framework_definition定義の-fオプションのtelegram_file_typeフラグメンバ値で指定します。

res_filetype

テスト実行フェーズの場合、結果ファイルの種別を設定します。以下のどちらかの値となります。

ESFRW_FILE_AFL:蓄積ファイル

ESFRW_FILE_CSV:csvファイル

電文ファイルの種別は、framework_definition定義の-fオプションのresult_file_typeフラグメンバ値で指定します。電文作成フェーズの場合は、ESFRW_FILE_NONE(無し)を設定します。

sel_mode

テスト実行フェーズのプロセス終了時は、プロセス開始時に設定した実行モードを設定します。それ以外では、ESFRW_SELMODE_NONEを設定します。

user_file

framework_definition定義の-pオプションのuser_fileフラグメンバで指定したファイル名称を設定します。

execution_count

framework_definition定義の-pオプションのexecution_countフラグメンバで指定した値を設定します。

parallel_count

framework_definition定義の-pオプションのparallel_countフラグメンバで指定した値を設定します。

esstop_execution

esstopコマンドが実行されたか否かを設定します。以下のどちらかとなります。

ESCOM_NO:esstopコマンド未実行

ESCOM_YES:esstopコマンド実行済み

ESFRW_CLIENTのパラメタ項目

continf

テスト実行単位の引継ぎ領域情報(サイズなど)を格納したESFRW_CONTAINERアドレスを設定します。framework_definition定義の-bオプションのclient_area_sizeに0(引継ぎ領域を使用しない)を指定した場合、NULLを設定します。

client_id

テストの実行単位となるクライアント識別子を設定します。

ユーザが設定するパラメタ項目

ESFRW_BATCH_IFのパラメタ項目

error_level

プラグインでテスト失敗と判断(ESFRW_NGまたはESFRW_NG_END)した場合、KFSE84003-Iメッセージで出力するエラーレベルを1~3の範囲で設定します。範囲外を指定した場合、システム検証支援は1として処理します。

リターン値

次のコードでリターンしてください。

ESFRW_OK

テスト成功。次のバッチ用プラグイン呼び出しを行う。

ESFRW_NG

テスト失敗。次のバッチ用プラグイン呼び出しを行う。

ESFRW_END

テスト成功。システム検証支援を終了する。

ESFRW_NG_END

テスト失敗。システム検証支援を終了する。

上記以外のコードでリターンした場合は、メッセージログを出力後、ESFRW_NGが返された時と同じ動作を行います。