JSTQBのシラバスはちょっとわかりにくいところがあるので、動画ないかなと探したところ↓のYouTubeに行きついた。
テスト技法
気になっていたテスト技法をリストアップしてみるとこんな感じ。
- 静的テスト
- 動的テスト
- ブラックボックステスト
- ホワイトボックステスト
- 経験ベーステスト
- エラー推測
- 探索的テスト
- チェックリストベースドテスト
静的テストと動的テストは相互補完的なものでどちらが優れているということはない。動的テストで検出が難しい欠陥を少ない工数で検出できる。
ユースケーステストのユースケースは↓のようなもの。引用元サイトはこちら。
JSTQBの範囲ではないけれど、C0/C1カバレッジという考え方もある。
C0カバレッジ率=実行行数÷全行数
C1カバレッジ率=実行分奇数÷全分岐数
テスト終了基準
- 計画したテストが完了している
- カバレッジ
- 未解決欠陥件数が合意内に収まっている
- 残存欠陥数が十分に少ない
- 品質特性の評価レベルが十分
(感想)数だけでなく、「クリティカルな欠陥がないこと」も終了基準として重要ではないかと感じた。
テスト支援ツールの種類
- 静的解析ツール
- ソースコードを解析して、コーディングパターンに違反している個所を指摘してくれる
- テストデータ準備ツール
- テスト自動化ツール
- 事前にテスト入力値とテスト実行結果の期待値を格納し、自動的(半自動的)にテストを実行してくれる
- カバレッジルール
- コードに対してどのくらいテストが完了したかを計算してくれる
- 性能テストツール
- 動的解析ツール
- ソフトウェア実行中に欠陥を検出してくれる
テストツールのリスク
- ツールの導入・メンテナンスのコストを過小評価してしまう
- EOL等でツールが利用できなくなる
- 新しい技術をサポートしない