テストカバレッジが非常に低い小さな(生成されたものを含めて〜70kLOC)C#(.NET 4.0、一部のSilverlight)コードベースを探しています。コード自体は、ユーザー受け入れテストに合格したという点で機能しますが、脆弱で、一部の領域では十分に分解されていません。通常の容疑者(NMock、NUnit、Silverlightビット用のStatLight)を使用して、レガシーコードの周りに強力な単体テストカバレッジを追加したいと思います。
私の通常のアプローチは、コードの状態に満足するまで、プロジェクト、ユニットテスト、リファクタリングを開始することです。私はこれを何度も行ったことがありますが、うまくいきました。
ただし、今回は、テストジェネレーター(特にPex)を使用してテストフレームワークを作成し、手動で具体化することを考えています。
私の質問は、レガシーコードベースでの作業を開始するときに過去にユニットテストジェネレーターを使用したことがありますか?
私の恐れは、生成されたテストがコードベースの意味のニュアンスを見逃し、コードで意図された動作を明確に表現するテストではなく、カバレッジメトリックのためにテストを行うという恐ろしい状況につながることです。