メインコンテンツへスキップ
SDETRole
SDETRole

QA ドキュメント

テストデータテンプレート作成ツール

フィールドと制約を定義し、正常・境界・異常の行を生成。

すべてブラウザ内で動作 登録不要

Field 1

Every row changes one field from the nominal valid row, so a failing row points at exactly one rule. Values are fixed and deterministic: the same definitions always give the same table.

CSV · 0 rows

このツールについて

データ駆動テストの質はデータ表の質で決まり、手書きの表は境界を見落としがちです。各フィールドを型(文字列、メール、数値、日付、enum、真偽値、電話番号)と制約(長さや値の範囲、必須、許可される値)で定義すると、このツールが表を作ります。標準的な正常行を 1 つ作り、その後は一度に 1 つのフィールドだけを変えた行を作ります。最小値と最大値、各制限の 1 ステップ外、必須なのに未入力、不正な形式などです。各行には「Accept」(受理)か「Reject」(拒否)のラベルと、「age = 17(最小値 18 未満)」のような理由が付くので、失敗した行は 1 つのルールを指し示します。値は決定的でランダムなデータを含まないため、同じ定義からは常に同じ表が作られ、バージョン管理での差分も読みやすく保たれます。

使い方

  1. 入力項目ごとにフィールドを追加します:名前、型、制約。制限がない場合は最小値・最大値を空欄にします。
  2. enum では許可される値を列挙し、数値では整数のみを正しい値とするかを選びます。
  3. プレビューを確認し、正常・境界・異常の行で絞り込みます。
  4. スプレッドシート駆動のテスト用には CSV、コードでのパラメーター化テスト用には JSON で出力します。

テストデータテンプレート作成ツール のよくある質問

出力を自動テストで使うには?

JSON 配列を読み込み、1 つのテストをパラメーター化します。各行のデータを送り、expected が "Accept" なら成功を、"Reject" なら検証エラーをアサートします。理由はそのままわかりやすいテスト名になります。たとえば Vitest/Jest の test.each や JUnit 5 の @MethodSource を使います。

値がない場合はどう表現されますか?

CSV では空のセル、JSON では null になります。API がキーの欠落と明示的な null を区別する場合は、キーを省略したケースを別に追加してください。

ランダムなデータを使わないのはなぜですか?

ランダムな値は失敗の再現を難しくし、表のレビューも難しくします。境界値テストには正確な値(最小値、その 1 つ下)が必要なので、このツールは固定の値を生成します。リアルなランダムレコードが必要な場合はテストデータ生成ツールを使ってください。

キーワードを入力すると SDETRole 全体を検索できます。

Pagefind による全文検索 · ブラウザ内で動作します 検索ページを開く →