ソフトウェアの開発・運用・保守

プログラムのテスト

単体テスト

モジュールごとにテストする

ホワイトボックステスト

モジュールの内部構造に着目しテストする

命令網羅

全ての命令を最低1回は実行

判定条件網羅(分岐網羅)

分岐の判定において、真と偽の分岐を少なくとも一回は実行

条件網羅

分岐の条件が複数ある場合に、それぞれの条件が真と偽の場合を組み合わせる

複数条件網羅

判定文の条件がとりうる全てのパターンを網羅する

テストカバレージ分析
コードの中のどれだけの割合を実行できたかを評価するために行う分析

ブラックボックステスト

モジュールの機能仕様やインターフェースの仕様に着目しテストする

同値分割法

データを種類ごとのグループに分け、かくグループの代表値を使う

境界値分析

グループの境界となるぶぶの値を使う

結合テスト

単体テストが終わった複数のモジュールを組み合わせ、正しく動作するか(モジュール間のデータのやり取りなど、、)をテストする

結合テストする時に使うダミーモジュール(何も処理を行わない)

ドライバ:テストしたいモジュールの上位にあるダミーモジュール

スタブ:テストしたいモジュールの下位にあるダミーモジュール

ボトムアップテスト

下位のモジュールから上位のモジュールへ順にテストする方法

最も重要なトップレベルのコンポーネントのテストが最後になる

トップダウンテスト

上位のモジュールから下位のモジュールへ順にテストする方法

スタブがたくさん必要になる

ビックバンテスト

スタブとドライバで個別コンポーネントをテストする

一気に結合するために原因を調べづらい

サンドウィッチテスト

ボトムアップテストとトップダウンテストを並行的に行うテスト

ボトムアップ トップダウン ビックバン サンドウィッチ
結合 早い 早い 遅い 早い
プログラムが実行可能になるまでの時間 遅い 早い 遅い 早い
コンポーネントドライバの必要性 必要 不必要 必要 必要
スタブの必要性 不必要 必要 必要 必要
早い段階下の並列度 普通 低い 高い 普通
特定のパスをテストする機能 簡単 難しい 簡単 普通
順番の計画と制御 簡単 難しい 簡単 難しい

システムテスト

結合テストが完了したら、システム全体をテストする。

機能テスト

– 統合されたシステムが要求仕様通りに動作するか
– 要求定義書に基づいてテストケースを作成する

性能テスト

– 非機能要求が満たされていることを確認する
– 検査対象:計算、レスポンスの速さ、結果の精度など – テストチームが計画し実行する

種類別性能テスト
ストレステスト

高負荷状態で動作することを確認する

ボリュームテスト

大きなデータ量を扱えるかを確認する

構成テスト

要求されているさまざまなソフトウェア、ハードウェア設定での 動作を確認する

互換性テスト

他システムとのインタフェースが仕様通りに動作するか確認 する

回帰テスト

既存のシステムと置き換えても同等の機能が確保されること を確認する

セキュリティーテスト

セキュリティーに関する要求が適切か確認する

タイミングテスト

応答や操作のタイミングに関する要求を満たしているか確認する

環境テスト

システムが導入・設置される環境で動作することを確認する

品質テスト

信頼性、保守性、可用性を評価する

復旧テスト

障害やデータ、電源、デバイス、サービスの喪失への対応を評価する

保守テスト

診断ツールと手順を評価する

ドキュメントテスト

必要なドキュメントが準備されたことを確認する

ユーザビリティーテスト

ユーザインタフェースに対する要求が満たされているか確認する

受入テスト

– システムが顧客が想定した通りに動作するか確認する
– 顧客が計画し、実施する

導入テスト

– システムが顧客の環境で動作するか確認する
• システムを構成する、必要なデバイスを接続する、他システムと接続する
回帰テストを実施する

運用テスト

利用者に提供する視点で、運用環境と同じ条件で動作確認を行います。

ソフトウェア開発おすすめ本

created by Rinker
¥3,520
(2020/10/01 06:42:56時点 楽天市場調べ-詳細)