H25 技術士(情報工学)ソフトウェア工学 II-1-4:ホワイトボックステストとブラックボックステスト


(1)ホワイトボックステストとは
プログラムの内部構造を考慮したテストで、命令網羅テストや条件文の分岐網羅テスト、条件網羅テストなど単体テストで行う内容になる。
(2)ブラックボックステストとは
プログラムの内部構造は考えずブラックボックスとして扱い、入出力内容に注目したテストで、仕様書から入力と出力の関係を考えたテストで主に結合テスト以降の工程で行う内容になる。
(3)テストを行うときの留意点
最初のテストはプログラムの内部構造に着目したホワイトボックステストを単体テストとして行い、プログラムの全ての処理が問題なく動作することを確認する。
次に、ホワイトボックステストの完了したプログラム同士の結合テストで、プログラムのインタフェース部分について内部構造を考慮しないブラックボックステストで実施する。
特に注意しないといけないのはホワイトボックステストをしっかり行わない状態で結合テストを行うと不具合などで仕様通りにプログラムが動作しないため、途中からプログラムの内部構造を検証するホワイトボックステストになってしまい、テストの工数が予定を超えてしまうことである。この場合、テスト工程の遅れもあるが、結合する他のプログラムの担当者が手隙になってしまうという問題もある。


[Intermission]
プログラミング工程で遅れが発生し、十分な単体テストを行わずに結合テストに入ってしまい、途中から出来の悪いプログラムのデバッグをチーム一丸で行うということは珍しくないです。
作業が遅延したため、品質に問題のあるまま次の工程に進むという判断はPM、PLは絶対してはいけないですね。
自社内であれば、そういった尻拭いもある程度は我慢できますが、他社との結合テストでデバッグにつき合わされるのはゴメンです。(あまりのひどさに合同テストの場で席を蹴って帰ったことがあります。)



戻る 一覧へ