September 2024
Intermediate to advanced
288 pages
4h 10m
Japanese
テストを通した際、自分が行ったコードの変更にどの程度自信を持っていますか。
テストをバグ検出の手段と捉えるならば、テストの感度と特異度について説明する必要があるでしょう。
テストスイートの感度とは、コードにバグが存在する場合にテストが失敗する確率を指します。コードに対するテストが存在しない場合や期待される動作のテストが存在しない場合、テストスイートの感度は低くなります。
テストスイートの特異度とは、コードにバグが存在しない場合にテストが成功する確率を指します。テストが断続的に失敗する場合やテストが脆い(コードの実装に強く依存する)場合、テストスイートの特異度は低くなります。テストスイートの特異度が低いと、テストに失敗しても誰も注意を払わなくなります。ただし、本章では特異度については扱いません。
テストスイートの感度を高める素晴らしい方法があります。それは、コードを修正する際に、実際にコードに手を付ける前に失敗するテストを作成する手法です。先にテストを作成することで、コードに期待されている動きを確実に検証できるようになります。
テストスイートの感度を高める方法は他にもあります。それは、実際に遭遇する可能性がありそうな入力や環境下でテストを行う方法です。空のリストや負数など、関数のエッジケースも考慮に入れてください。いわゆる「ハッピーパス」だけでなく、発生する可能性のある一般的なエラーケースも考慮に入れてテストしましょう。
コードカバレッジ ...
Read now
Unlock full access