ASP.NET MVCとTDDを使い始めました。私はユニットテストの中で、DBのような他のシステムではなく、あなたのコードをテストすることに焦点を当てるべきだと読んだことがあります。しかし、不可欠な機能がDBに存在するとどうなりますか?ASP.NET MVCでの全文検索の単体テスト方法
プロジェクトとパターンの設定方法の最初のガイドとして、MVC Storefrontシリーズを使用しました。フルテキスト検索が不可欠であるとして、私は私のリポジトリ今
IQueryable<HealthOrganization> SearchOrganizations(string phrase);
内の関数としてこれを設定して、この検索のロジックは、フルテキストデータベース内のいくつかの他の機能とテーブル値関数を必要とします。これらの関数のロジックは、ファクerリポジトリで正確に正しくなることは不可能です。これを単体テストし、検索でTDDを実行するための最良の戦略についてのあなたの推奨は何ですか?
を返します。しかし、検索が重要な機能であるアプリケーションをお持ちの場合、最初にテストをテストする検索テストを開発したくないですか?統合テストを始めることができますか? –
@rundbom:あなたはできます、私はそれをしません。統合テストの作成には時間がかかります。 TDDでは、あなたは素早くなりたいです。そうでない場合、「フロー」が中断されます。もう一つの理由があります。 TDDでは、あなたのコードがあなたがしようとしていることを達成したいと思っています。システム全体が期待通りに動作するかどうかはテストされません。説明するのは難しいですが、統合テストが失敗した場合、ユニットテストが失敗したときと同じ意味があります。 –