ショートカット
ファシリテーター × あり方
コーディングの向こう側
Hello, ANOTHER world!
オブジェクト指向のはなし
プログラミングのはなし
C言語実力診断クイズ
eSkillBooks
コーディングの向こう側

テストは2種類ある - PART2

こっちも大事度

ブラックボックステスト

さて、もうひとつ重要なテストが残っています。それは品質管理のためのテストです。これまでのホワイトボックステストでは、製作者の意図通りの動作をしているかをチェックしているにすぎません。その動作自体が正しいものかどうかのチェックは行われていないのです。

動作自体が正しいのかどうかというのは、つまり、ソフトウェアの挙動が仕様に合致しているかどうかということです。これを確認するのは「ブラックボックステスト」です。中身がどういう作りになっているかということに関係なく、その見た目の動作のみに注目して仕様通りかどうか試すことからそのように呼ばれます。言い方を変えれば、ユーザーの立場でソフトウェアを見たときの挙動が期待通りかどうかの確認です。「ユーザーの立場で」というところが重要です。そう考えると、ソフトウェアの使いやすさや動作速度などのような品質に関する項目もテストの範疇ということになります。

「ホワイト」と「ブラック」の使い分け

ブラックボックステストは、テスト対象のソフトウェアが本当にブラックボックスである状況で行うのが理想的です。中身がどのようになっているのかを知っていると、かえって良いテスト項目を考える際の妨げになるからです。例えば大きな会社では開発部署のほかに「品質管理課」のような部署があって、出荷されるソフトは必ずそこで品質チェックが行われる仕組みになっていたりします。大手の下請けで開発をしているような場合は実感がわかないかも知れませんが、そういう風になっているのです。

本当にブラックボックスであるような状況が理想的だといっても、実際には、作った本人がブラックボックステストを行わなければならない状況もあるでしょう。小さな会社の場合や、個人で作っているソフトの場合などがそうです。そのためには、今行おうとしているテストがブラックボックスなのかホワイトボックスなのかを明確に意識する必要があります。ブラックボックスの場合はユーザーの立場で、ホワイトボックスの場合は制作者の立場でテストに臨むようにしなければなりません。

前へ

目次へ
それはインターフェイス?

(「コーディングの向こう側」は2000年4月から2001年5月にかけて作成されたコンテンツです。)