①トップダウンテスト:
最上位のモジュールから順に結合していきテストを行います。通常、上位モジュールは下位モジュールに指示を出して処理をさせ、その結果を取りまとめるという動作をします。したがって、下位モジュールが正しい結果を返さないと、上位モジュールが正しく動作しているのかを調べることはできません。上位モジュールが必要になります。しかし、本物の下位モジュールは、まだテストが終わっていませんから、正しい結果を返すかどうかわかりません。
そこで、テスト用の仮の下位モジュールを用意します。これをスタブと言います。スタブはテストデータに対してだけ正しい結果を返却するようにプログラムされています。
トップダウンテストには、上位モジュールほど何度もテストされて品質レベルが上がるという利点と、テスト作業を並行して行いに行くという欠点があります。
②ボトムアップテスト:
最下位のモジュールから順位結合していきテストを行います。ボトムアップテストでは、仮の上位モジュールであるドライバが必要でになります。ドライバは、下位モジュールを試しに使ってみるテストプログラムであうr。
ボトムアップテストには、テストの初期段階でテスト作業を並行して行えるという利点と、テストの最終段階にならないと全体の動作をテストできないという欠点があります。
④ビッグバンテスト、一斉テスト:
一度にモジュールを結合テストを行います。いわば、出たとこ勝負で「ェイ」と動かしみるテストです。手っ取り早くテストを実施できますので、正しく動作すれば良いのですが、正しく動作しなかったときには、どの部分が悪いのかを切り分けることが非常に困難です。
ビッグバンテストは、単体テストを終えてから一度に結合してテストを実施します。
一斉テストは、単体テストをも省略し程度に結合してテストを実施します。
⑤一斉テスト:単体テストを省略して、モジュールを一度に結合する。
1:システムテスト
システムが設計仕様を満たしているかをテストとします。外部設計、内部設計工程の誤りの発見を行います。
「システムテスト」
・機能テスト:使用で定められた機能が全て備わっているかをテストする。
・性能テスト:使用で定められた性(レスポンスタイム、スループット)が出るかをテストする。
・負荷テスト:負荷をかけた時でも正しく動作するかをテストする。
・障害テスト:障害発生時の対応が正しく行われるかをテストする。
2:運用テスト
ユーザが主となって、実際位の環境下でシステムを運用するテストです。いわゆる試運転です。
3:退行テスト
退行テスト(リグレッションテスト)は、変更の影響が他の機能に及んでいないことを確認するテストです。誤りを修正したら、今まで正しく動作していた機能が正しく動作しなくなったということのないようにテストします。