1

単体テストの目的でImageSourceのモックを作成したいと思います。ImageSourceには内部コンストラクターがあり、モックを作成したり、継承されたクラスを作成したりすることはできません。ここでブラシについて説明されていますが、ImageSourceにも適合します:WPFでカスタムブラシを実装するにはどうすればよいですか?

そのための回避策はありますか?

4

1 に答える 1

2

私があなたの状況を正しく理解していれば、パブリック コンストラクターを持たないシール クラスのモックを作成する必要があります。

Moqではこれを行うことはできません。

回避策として、他の「モック/分離」フレームワーク、つまり、この機能をサポートする TypeMock を使用できます。また、Microsoft Moles を使用することもできます。

一方、ImageSource のモック化されたインスタンスをフレームワーク クラスに挿入しようとしている場合は、テストに問題がある可能性があります。

少なくとも、モックできる別のクラスでフレームワーク クラスを抽象化して、this がこのクラスと ImageSource を直接使用する必要をなくすことができます。

于 2012-05-15T14:55:37.933 に答える