はじめに
xUnit Test Patterns: Refactoring Test Codeにあるユニットテストの不吉な臭いから抜粋。
テストコードの不吉な臭い(Code Smells)
- 条件付きのテストコード(Conditional Test Logic)
- テストを書くのが困難なコード(Hard-to-Test Code)
- テストコードの重複(Test Code Duplication)
- 製品コードにテストコードがある(Test Logic in Production)
振る舞いの不吉な臭い(Behavior Smells)
- アサート文がランダムに実行される(Assertion Roulette)
- テストが不規則に実行される(Assertion Roulette)
- 壊れやすいテスト(Fragile Test)
- 何らかの機会にデバッグが必要。(Frequent Debugging)
- テストの実行に手動の介入が必要(Manual Intervention)
- 遅いテスト(Slow Tests)
プロジェクトの不吉な臭い(Project Smells)
- バグだらけのテスト(Buggy Tests)
- 開発者がテストコードを書かない(Developers Not Writing Tests)
- テストコードの保守コストが高い(High Test Maintenance Cost)
- 製品のバグ(Production Bugs)