4.4.8 値の入力規則
代入値と期待値に指定する値には,データ名およびCOBOLの定数,テストデバッガで定義する拡張16進定数を指定できます。さらに,代入値には次の値も指定できます。
-
データ項目のアドレス値
-
指定されたサイズで確保された領域のアドレス値
-
アドレス名によって参照されるデータ項目と同じサイズで確保された領域のアドレス値
これらの値を指定するときは,単体テスト支援で固有の形式で入力してください。
入力先のデータ項目 |
指定する代入値 |
入力形式 |
---|---|---|
アドレスデータ項目/ポインタ項目 |
データ項目のアドレス値 |
&'データ項目名' または&"データ項目名"※1 |
指定されたサイズの領域を確保したアドレス値 ※2 |
@'ALLOCATE,領域サイズ(バイト)' または@"ALLOCATE,領域サイズ(バイト)" ※1 指定できる領域サイズは1〜2147483647 ※3 |
|
アドレス名 |
アドレス名によって参照されるデータ項目と同じサイズの領域を確保したアドレス値※2 |
@'ALLOCATE' または @"ALLOCATE" ※1 |
複数のデータ項目が関連づいている場合の構造と設定
集団項目など,複数のデータ項目が関連づいてデータ項目を定義している場合の,データ項目の表示と設定方法について説明します。
-
集団項目
集団項目は,各データ項目に設定されているレベル番号に合わせて,親子関係を持つ構造で扱います。例を次に示します。
COBOLソーステキスト
01 AAA. 02 AAA-SUB PIC X.
表示例
01 AAA 02 AAA-SUB
集団項目に対して直接値を設定できません。
-
REDEFINES
再定義するデータ項目の構造の例を次に示します。再定義するデータ項目のデータ名の後ろには,再定義であることを示す「<REDEFINES>」の文字列が表示されます。
COBOLソーステキスト
01 BASEAREA. 02 BUFFER PIC X(10). 01 WORK REDEFINES BASEAREA. 02 N PIC S9(5). 02 S PIC X(5).
表示例
01 BASEAREA 02 BUFFER 01 WORK <REDEFINES> 02 N 02 S
-
アドレス名によって参照されるデータ項目およびアドレス名
アドレス名によって参照されるデータ項目の構造の例を次に示します。
COBOLソーステキスト
01 DATA-1 ADDRESSED BY ADDRESS_NAME. 02 BUFFER PIC X(10).
表示例
01 DATA-1 ADDRESS_NAME <ADDRESSED> 02 BUFFER
-
OCCURS/指標名
指標名を含むデータ項目の構造の例を次に示します。指標名の名前の後ろには,指標名であることを示す「<INDEXED>」の文字列が表示されます。
COBOLソーステキスト
01 DATA-1. 05 ELEM PIC 9(5) OCCURS 2 INDEXED BY IDX.
表示例
01 DATA-1 05 ELEM IDX <INDEXED> 05 ELEM(1) 05 ELEM(2)
また,可変長項目の指標名を含むデータ項目の構造の例を次に示します。制御変数の名前の後ろには,可変長項目の制御変数であることを示す「<DEPENDING>」の文字列が表示されます。
COBOLソーステキスト
01 DATA-1. 05 ELEM PIC 9(5) OCCURS 2 DEPENDING ON DEPNUM INDEXED BY IDX. 01 DEPNUM PIC S9(4).
表示例
01 DATA-1 05 ELEM IDX <INDEXED> DEPNUM <DEPENDING> 05 ELEM(1) 05 ELEM(2) 01 DEPNUM
制御変数は,データ項目の表示部分には複数個所に表示されます。ただし,制御変数に対する値の設定(値の代入,値の表示,期待値)については,同じ制御変数のデータ項目については共通になります。
どこか1か所で値の設定を変更した場合,その制御変数を表示しているすべての個所の表示が変わります。上記の例では,「DEPNUM <DEPENDING>」の値の代入の設定を変更した場合,「01 DEPNUM」の値の代入の設定についても連動して変更されます。
-
TYPE/TYPEDEF
型宣言を含むデータ項目の構造の例を次に示します。
COBOLソーステキスト
01 DATATYPE TYPEDEF. 02 BUFFER PIC X(10). 01 DATAREF TYPE DATATYPE.
表示例
01 DATAREF 02 BUFFER
-
SAME AS
SAME ASを含むデータ項目の構造の例を次に示します。
COBOLソーステキスト
01 DATATYPE. 02 BUFFER PIC X(10). 01 DATAREFTYPE SAME AS DATATYPE.
表示例
01 DATATYPE 02 BUFFER 01 DATAREFTYPE 02 BUFFER
-
GLOBAL指定のデータ項目
GLOBAL指定のデータ項目の例を次に示します。データ項目のデータ名の後ろには,GLOBAL指定であることを示す「<GLOBAL>」の文字列が表示されます。
COBOLソーステキスト
01 AAA IS GLOBAL. 02 AAA-SUB PIC X.
表示例
01 AAA <GLOBAL> 02 AAA-SUB <GLOBAL>
-
RENAMES
RENAMES句で定義されたデータ項目は,それを含む最上位の集団項目から1段下がった場所に表示されます。
COBOLソーステキスト
01 AAA. 03 BBB PIC X(1). 66 RN RENAMES BBB.
表示例
01 AAA 03 BBB 66 RN
-
LINAGE-COUNTER
LINAGE-COUNTERは,特殊レジスタが結びついているデータ名(ファイル名)を「(xxx)」の形で表示します。
表示例
LINAGE-COUNTER(FD-NAME)
注意
-
次に該当する,値の代入と期待値の設定をしたテストケースは,単体テストが実行されないで,判定結果が「エラー」となります。[メッセージ]画面のメッセージを確認して,設定を変更してください。
-
指定したデータ名が存在しない,または参照できない。
-
指定したデータ名のデータ項目が,対象のデータ項目に対して代入または比較ができない。
-
指定した定数が,対象のデータ項目に対して代入または比較ができない。
-
設定したデータ項目のアドレス値または領域を確保したアドレス値が,単体テスト支援固有の形式に合っていない。
-
設定したデータ項目のアドレス値または領域を確保したアドレス値が,対象のデータ項目に対して代入または比較ができない。
-
-
次に示すデータ項目は,値の代入および値の表示/期待値のデータ名の一覧に表示されません。
-
オブジェクト参照データ項目
-
OLEオブジェクト参照データ項目
-
バリアントデータ項目
-
-
編集項目に対してテストデータを設定する場合は,次のことに気を付けてください。
-
値の代入には,編集項目に入力する値を設定してください。
(例)
対象とするデータ項目のPICTURE句が「¥¥.¥」のとき,値2.5を代入する場合は,値の代入として「2.5」を設定します。
-
期待値には,編集項目を表示したときの文字列と比較する文字列を設定します。
(例)
対象とするデータ項目のPICTURE句が「¥¥.¥」のとき,値2.5であるということを確認する場合は,期待値として「"¥2.5"」を設定します。
-
-
[中断点]画面で,大域名(GLOBAL句が指定されたデータ項目)が中断点から参照できないとき,[値設定][値の表示][期待値]は指定できません。