テスト

プログラムを完成させるには、プログラムが意図通りに動くようになっているか確認する作業が必要だ。そして問題が見つかれば、原因を探して修正しなければならない。このような作業をテスト・デバッグという。

テストは非常に重要な作業だ。Windowsやゲームプログラムの開発では、テストに要する時間は全体の開発時間の半分以上を占める。製品のソフトウエア開発とは、テスト作業であると言ってもよい。

テストの方法を説明しよう。

テスト仕様

テストをするためには、何をテストするかが決まっていなければならない。およそ、「何をしても大丈夫」、ということはあり得ないので、プログラムを作成する際にはどの項目をテストするかをきちんと決めておく。このようなことを決めた文書を「テスト仕様書」と呼ぶ。

ごく簡単なプログラムの場合は、テスト仕様書を作る変わりに簡易的にプログラムの操作説明書に沿ってテストを行ってもよい。今回はこの方法を用いてテストを行うことにする。

操作説明によるテスト

操作説明に忠実に従って操作し、説明書通りの結果が得られるかを確認していく。

この時、始めてプログラムを操作する人と同じように説明書に忠実に従って操作することが重要だ。ここで気をぬくと、操作説明の小さなまちがいや、プログラムの間違いを見逃してしまう。

もし操作説明書に具体的な操作方法や入力値の例が書いてなければ、必ず操作説明書に具体例を書き加えておくべきだ。

テスト中には、操作説明書に記載していなかった操作があるこことに気がつく場合がある。そのような場合には操作説明を書きくわえて、同時にテストするとよい。

より詳細なテストとテスト報告書

より徹底的にテストを行う場合は、操作説明書に書かれた操作だけでなく、多少異なる操作もテストしてみるべきだろう。

このような場合は、漫然とテストを行うのではなく、テスト報告書を作成しながらテストを行うとよい。もし後でソフトウエアにトラブルが発見された時に、どの場合については動作していたか、がわかれば問題を分析する大きな助けになる。

テスト報告書の元になるのは操作説明書である。操作説明書通りにテストを行った部分は、単に、その操作を確認したと記載しよう。操作説明書とほぼ同じで、一部違う数値を入力したり、異なる操作を行ったら、それはテスト報告書では具体的に記述して、その操作を確認したことを記録しておく。

テスト報告書では、表形式などを使って、これらのことをわかりやすくコンパクトに表すとよい。

 

たとえば以下のような入力があったとしよう。

数値1
 
演算
 
数値2
 

数値1, 数値2に数を入力し、演算を指定すると、演算結果を表示するものとする。この場合、いろいろな組み合わせのテストを行った場合には以下のようになる。

テスト日時 テスト担当 数値1 演算 数値2 結果
2009/12/11 金子 2 × 3 6
2009/12/11 金子 aa + bb aabb
2009/12/18 金子 100 + 0.1 100.1
2009/12/18 金子 10 \ 3 3
2009/12/18 金子 10 / 3 3.333