94400d50d4
作为子目录纳入系统,与核心测试管道协同 Co-Authored-By: Claude <noreply@anthropic.com>
33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
# 境界条件テスト (Edge Case Tests)
|
|
|
|
## 概要
|
|
COBOL プログラムの型判定システムの検証に特化した境界条件テスト集。
|
|
通常のテストパターンではカバーできない特殊ケースを網羅。
|
|
|
|
## テスト一覧
|
|
|
|
| プログラム | カバー内容 | 件数 |
|
|
|-----------|-----------|------|
|
|
| `prog-struct-edge.cbl` | PERFORM THRU, GO TO DEPENDING, 段落スルー, ALTER | 6 |
|
|
| `data-type-edge.cbl` | REDEFINES連鎖, ODO=0, JUSTIFIED, BLANK ZERO, SIGN, 編集記号 | 8 |
|
|
| `file-status-edge.cbl` | STATUS 35/37/41/44/47/48 | 5 |
|
|
| `numeric-edge.cbl` | COMP-3符号, SIZE ERROR, ROUNDED, 桁あふれ, 混算, ゼロ除算 | 9 |
|
|
| `level88-edge.cbl` | 88-level THRU範囲, 複数値, 境界値 | 10 |
|
|
| `matching-edge.cbl` | 0%一致, 100%一致, 全同キー, 降順 | 4 |
|
|
| `ambiguous-type-edge.cbl` | matching+key切混淆, IF+EVALUATE hybrid | 2 |
|
|
|
|
## 追加境界データ
|
|
既存の各プログラムディレクトリに `*-empty.dat` (0バイト空ファイル) 追加:
|
|
01~08, 10~12, 24, 30, 31, 34, 35
|
|
|
|
## 実行方法
|
|
```bash
|
|
cd cross-cutting/edge-cases && bash run.sh
|
|
```
|
|
|
|
## 判定エンジン検証
|
|
以下の混淆パターンは型判定エンジンの正しさを検証する:
|
|
- `ambiguous-type-edge.cbl`: 2入力+WS-PREV-KEY+累算器 → matching? key切?
|
|
- IF + EVALUATE 両方 → 分岐種別の判定
|
|
- 降順入力 → 「ソート済み」前提への違反検出
|