この記事は下記の方におすすめ!
・テストデータって重要なの?
・テストデータの作成する際の注意点って?
テストデータって重要?
とても重要です。テストデータを重要視する理由は、主に以下の2つです。
新しい場所での正しい動きを確認できる
データ移行は、データベースの引っ越しのようなものです。しかし、新しいデータベースでちゃんと古いデータが動くかは確認しないといけません。
問題を見つけて開発内容を直せる
テストデータを注意深く選ぶことで、移行の途中で問題が起きることを予防できます。例えば、新しいデータベースでデータが失われたり、壊れたりすること。テストデータを使って問題を見つけ、早めに修正することができます。
具体的にどんなテストデータが必要なの?
下記にて具体的にどのようなテストデータを作成する必要があるのか解説します。
具体例: 古い顧客データベースから新しい顧客データベースへのデータ移行のテスト
多様なケースを網羅したテストデータ
結合処理は、複数の部品が連携して動作する場面をテストするものです。だからこそ、いろいろな状況や条件を考えて、それぞれの場合にどのようなデータが必要かを考えることが大切です。
ケース1
通常のデータ移行:古いデータベースから移行されるデータ(500 件の顧客データ)
ケース2
大量データ移行:古いデータベースから移行されるデータ(10000 件の顧客データ)
ケース3
フォーマット変更:古いデータベースから移行されるデータ(古いフォーマットの日付)
極端な値を試すテストデータ
たとえば、数値の計算をするシステムなら、小さな値や大きな値、ゼロなど、極端な値でテストしてみることが重要です。これによって、システムの挙動が予想外なことにならないかを確認できます。
ケース4
少数のデータ移行:古いデータベースから移行されるデータ(1件の顧客データ)
ケース5
無効なデータ移行:古いデータベースから移行されるデータ(空のデータ)
エラー状況を想定したテストデータ
データの取得や処理が失敗する場合を想定して、不正なデータや不足データを入れてみましょう。たとえば、必要な情報が欠けた場合や、データが壊れてしまった場合などです。こういった状況でどのようにシステムが反応するかを確認することが重要です。
ケース6
不正なデータ移行:古いデータベースから移行されるデータ(欠損してたり不正な値のデータ)
リアルなデータを使う
実際の使用に近いデータを使ってテストすると、実際の動作により近い結果が得られます。たとえば、商品の価格や顧客情報など、本物のデータを利用してテストすると良いでしょう。
ケース7
実際のデータ移行:古いデータベースから移行されるデータ(実在の顧客データ)
ランダムな値のテストデータ
テストデータをあえてランダムな値で入れてみると、偶発的なバグや問題が見つかることがあります。ランダムな値を使ってテストすることで、意外なケースをカバーできます。
ケース8
ランダムなデータ移行:古いデータベースから移行されるデータ(ランダムな文字列や数字のデータ)
データの一貫性を確保するためのテストデータ
ケース3と被る内容ですが、複数の部品が連携する場合、データの一貫性が重要です。あるデータが変わった時に、他のデータにどのような影響があるかを考えてテストデータを作成し、システムが正しく動作するかを確認しましょう。
ケース9
フォーマット更新
移行元:古いフォーマットの郵便番号(12345)
移行先:新しいフォーマットの郵便番号(54321)
→ 期待されるデータ移行結果:郵便番号が新しいフォーマットに変更される
お疲れ様でした!
コメント