2009-05-04 11 views
1

私は、オブジェクトの単体テスト模擬用にRhinoモックを使用しています。私たちのDALはcodesmithを使って.netTiersテンプレートからコードを生成します。このテンプレートは、データソースへのCRUD型トランザクションのすべてのメソッドを含むこれらのDataRepositoryクラスを作成します。ユニットテストでは、スタブとして使用するインタフェースクラスを持たないこのデータリポジトリオブジェクトを模擬しようとしています。.netTierが生成したDataRepositoryオブジェクトを模擬する方法またはスタブする方法

簡単に言うと、Rhinoモックを使用して.netTiersが生成したDataRepositoryを模擬し、テストデータベースの必要性を避け、最後に破棄する必要のあるデータソースに対する実際のトランザクションを行いましたか?

答えて

2

誰も私が知っているように、まだネットティア用の模擬DataRepository実装を開発していないので、私はしばらくこのことを熟考してきました。

TypeMockとRhinoMockの記録再生のステップにはあまり関心がないので、DataRepositoryクラスまたはサービスレイヤーを喜んで犠牲にしないで新しいMoqを選択しました。

あなたが.NET 3.5を使用していると仮定して、私はそれをお勧めします。

+0

'DataRepository'クラスのすべてのプロパティは静的なので、Moqができることよりも多くの作業が必要です。 – CoderDennis

0

要するに、Rhinoはインターフェイスまたは非密封クラスのいずれかのタイプのみをモックできます。そして、仮想メソッドまたは抽象メソッドだけをスタブすることができます。

DataRepositoryを模擬実装に置き換えることを目標にしているのであれば、より進化した模擬フレームワーク、例えばTypeMockを調べなければならないと思います。

CSテンプレートを管理している場合は、テンプレートを使用して模擬DataRepository実装を生成することもできます。

関連する問題