ソフトウェアテストの種別(手法による分類)
1. 構文チェック
- 言語系による構文チェック
- 構文エラーによるビルド/実行エラーの抑止
- 構文エラーが無くなれば(ランタイムエラーを除いて)基本的にはプログラムが実行可能であることが期待できる
- 厳密にはテストではないが、プログラムの正常な実行には欠かせないステップ
2. ユニットテスト
- 単体テスト、モジュールレベルテストとも
- 関数/メソッド単位の動作を検証する
- 多くのプログラミング言語にはユニットテスト用のフレームワークが存在する(ex. JUnit, pytest, etc...)
- 関数/メソッド単位のテストを行う都合上、依存するモジュールのモック/スタブ化を行うことが多い
- モック/スタブの作成を支援するフレームワークも言語毎に存在する
- ユニットテストではホワイトボックステストが基本となり、全てのコード(処理や分岐)のカバレッジをカバーすることが目標になる
3. 機能テスト
- システムが提供する機能に対するテスト
- モジュールを結合した上で行われる
- モジュールの結合、DBや外部システムを結合した上で
4. 業務シナリオテスト
5. フォーマットテスト
6. セキュリティテスト
7. クロスブラウザテスト
8. シナリオテスト
9. ジョブフローテスト
10. 運用テスト
11. 障害テスト
12. 性能テスト
13. 移行テスト
参考資料