最近、JetBrains の DotCover を評価していて、興味深い質問にたどり着きました。
TDD に従う場合:
- 希望する理想的なインターフェイスに対するテストを作成します。
- 赤
- テストに合格する最も単純な実装を作成します。
- 緑
- 100% を示す DotCover を実行します。
- 次に、重複/リファクタリングを削除します。
リファクタリングのプロセス中に一部の機能を独自のクラスに移動し (たとえば、DRY または SRP に準拠するために)、DotCover を再実行すると、新しいクラスを直接テストしなくなるため、カバレッジ % が低下します。 .
これは、TDD の原則に従って絶対的な文字を使用しているため、少し奇妙に思えます。コード内の任意の行を変更またはコメントアウトすると、テストが中断されますが、カバーされていないと報告されます。
何か不足していますか?