テストはプログラムを実行するだけではなく、ソフトウェアライフサイクル全体を対象とします。給与計算システムの場合、テストには、要件の完全性のレビュー(静的テスト)、給与明細ルールからのテストケース設計、システムに対する実行(動的テスト)、そしてシステムが使用目的に適合しているかの評価が含まれます。その目的は、システムが指定された要件を満たしていることを判断し、使用目的への適合性を示し、欠陥を検出することです。
テストとデバッグの違いは何ですか? テストは、欠陥を見つけ品質を示すための計画、準備、評価のプロセスです。デバッグは、検出された欠陥の原因を特定して修正する開発活動です。テストは欠陥を発見し、デバッグはそれを除去します。
テストはソフトウェアの実行だけが対象ですか? いいえ。テストには、要件、設計、コードのレビューなどの静的活動も含まれます。静的テストはソフトウェアを実行せずに欠陥を見つけ、多くの場合より早期に、より安価に行えます。
「使用目的に適合している」とはどういう意味ですか? ソフトウェアが、指定された要件の文言を超えて、実際の利用においてユーザーとステークホルダーのニーズを実証的に満たしていることを意味します。
テストで欠陥が存在しないことを証明できますか? いいえ。テストは欠陥の存在を示すことはできても、存在しないことを示すことはできません。自明なケースを除き、完全なテスト(網羅的テスト)は不可能です。