
76
4 章 データ駆動テスト
4.1
データの妥当性とアクセシビリティ
テストデータや環境の状態をコントロールするということは、データがどれだけ妥当であるか、
どれだけ簡単にアクセスできるか、この
2
つの終わりなき戦いになります。妥当性とは、その環境
が本番環境をどれだけ模倣できているかを表す尺度です。アクセシビリティとは、その環境でデー
タがどれだけコントロールしやすいかを表す尺度です。私たちがテストする環境は、これら
2
つの
尺度のどこかに収まります。次の図はこの考えをおおざっぱに表現したものです。
4-1
y
軸の値が高ければ高いほど、本番データをうまく模倣していることを意味します。逆に低けれ
ば低いほど、本番データに似ていないことを意味します。
x
軸はどれだけデータと環境をコントロー
ルできるかを表現しています。最も右にある点は完全にコントロールできていて、最も左にある点
はコントロールがほとんどできないことを意味しています。
ローカルホスト環境でアプリケーションをテストしたとき、最も一貫性のある結果が得られます。
すべての変数を自分で完全にコントロールできるためです。しかし、これには犠牲を伴います。本
物の本番データが使えなかったり、ウェブサイトの負荷といった本番環境を模倣できなかったりす
るせいで、バグを見落とす恐れがあります。一般的に、本番環境に対してテストを実行するのは許
されません。テストがデータベースを偽のユーザ名で埋めてしまうかもしれませんし、さらに悪い
ことに、テストが商品を購入してしまう恐れもあります。 ...