私はASP.NET MVC 2プロジェクトに取り組んでいます。私はこのようなタイトなデータリポジトリクラスへの依存、何かをいくつかのコントローラクラスを手渡してきた:ASP.NET MVC 2のMoqと具体的な依存関係
public class MyController : Controller
{
MyRepository myRepository = new MyRepository();
// ...
}
クラスMyRepository
は、具体的な、ないインタフェースです。
基本的に、私はこのコードに読み取りアクセス権を持っていますが、書き込みアクセス権はありません。私はそれが動作することを確認するためにいくつかの単体テストを書くことを試みています。言うまでもなく、私は実際にデータベースにヒットしたくないので、明らかに何らかの嘲笑が必要です。
私は単体テストやモックを始めたばかりですが、私はMoqを読んできましたが、どのように動作するのかという基本的な考え方が得られたと思います。私は正常に単純なモックリポジトリオブジェクトを作成することができました...しかし、問題は、私はまだクラスに渡す方法を知らない!
私が元のコードを書いたのであれば、具体的なクラスではなくインターフェイスを使用していて、依存性注入用の追加コンストラクタを書いていたでしょう。それがそのまま、私は混乱している。
Moqがクラスに渡すのを手伝ってもいいですか(私が模倣した場合MyController
)、私はリファクタリングできるように書き込みアクセス権を申請する必要がありますか?