テストデータの中身を知ろう
\オカウチワニが1人でやっている okauchiwani-hitori Advent Calendar 2025 12日目の記事です!!!/
ソフトウェアテストをしていると、毎日のようにテストデータを作る場面があります。
ユーザーを作って、商品を登録して、条件を満たすためにUIをカチカチカチカチ。最初はそれでもいいのですが、規模が大きくなるにつれて「UI操作だけではしんどいな」と感じる瞬間が必ず訪れます。
今回は、テストデータの"中身"を知ることで、データ準備が一気に楽になるという話を書いてみます。
テストデータの中身を知ると世界が変わる
テストデータはさまざまなパラメータが集合したデータです。UIを操作して作成することから、それでしか作成できない様に見えます。実際には、パラメータの集合なので、必要なパラメータを設定すればテストデータとして機能します。
- ユーザーの「年齢」はDBのどのカラムに入っているのか
- 状態を変えるフラグはどの値なのか
- 作成日時などのメタ情報は何に影響するのか
ここがわかるだけで、テストデータへの理解は一気に深まります。
逆に中身を知らないと、
- なんでこのデータだけ動かない?
- なんで再現しない?
と、UIの操作ログとにらめっこするだけとなって、再現させる為のきっかけが少なくなってしまいます。
構造がわかれば応用ができるようになる
データの構造を理解すると、そこから応用して、自分が望むテストデータを作ることができます。
たとえば、
- 特定のステータスを再現するために
UIだと10ステップ必要だけど、DBならカラム1つ変えるだけで時短できる - APIでデータを作れば、複雑な画面遷移をスキップできる
- ステータスを1日以上の時間経過が必要だが、作成日時を昨日以前にすることで再現できる
UI操作でも同じことが出来ますが、内部構造がわかれば最短距離でデータを作ることができる。
もちろん何でも直接変更すればいい、という話ではありません。変更すべきでないパラメータもあるし、破壊的な操作はNGです。
ただ、それでも
"仕組みを知っているQA"と"UIだけで頑張るQA"では作業コストが10倍違う
と言っても過言ではありません。
カラムを少し変えるだけで、UIより速く安全に作れることがほとんど
テストデータというと、「UIから正しい手順で作るべき」という意識を持つ人も多いと思います。
もちろん、本当に重要な検証ではUI操作が必要です。ただ、テストデータ準備のほとんどはUIで作る必要がありません。むしろUIで作る方が遅くて、効率的でないことがあります。
たとえば、
A → B → C → D と4画面を経由しないと作れないデータがあるとして、
内部的には「status = 'completed'」という1パラメータだけで済む話だった、なんてよくある話です。
DB・API・管理画面の裏側を正しく理解できれば、
- UIのバリデーションに邪魔されない
- 何度でも同じデータを即座に再現できる
- テストケースごとのセットアップが高速化する
- 再現の“揺らぎ”が消える
と、ほぼメリットしかありません。テストデータ準備のボトルネックは、作成に時間がかかることではなく、中身を知らずにUIを触り続けていることだったりします。
まとめ
テストデータの中身を知ることは、QAが強くなるためのわかりやすく強力なステップです。
- テストデータはUIからだけではなく、パラメータの集合から作られている
- 構造が理解できると応用ができ、UIに頼らずにテストデータ作成が行える
- UI操作より、パラメータ1つ変える方が安全で速い場面がほとんど
QAに必要なのは"画面の操作方法"だけではなく、わからないままにしているデータを少し覗いてみませんか?
Discussion