2017-06-28 5 views
0

MSTestを使用していくつかのレガシーコードに単体テストを書き込もうとしています。私はテストしているクラスにfakeアセンブリを追加しましたが、ユーザコントロールへの参照があり、その中にコードがあります。 これはおそらく正しい方法ではないと知っていますが、ユーザーコントロールをシムできるのですか?彼らはShimContextに表示されないので、あまり期待していません。コントロールをシミングする

+0

あなたを制御するに指摘するならば、あなたの質問を参照しているされて答えるだろうか - ASPX、リサイズ、WPFの? – zaitsman

+0

非常に良い点。 Doh。それはWPFです。 –

答えて

0

私はあなたが立ち往生したのか分かりません。

私はそうのようにWPFに新しいクラスUserControl1を作成する場合:あなたは、実際のSystem.Windows.Controls.UserControlをシムにしたい場合は、

Namespace.Fakes.ShimUserControl1.AllInstances.Do = control1 => { };

/// <summary> 
    /// Interaction logic for UserControl1.xaml 
    /// </summary> 
    public partial class UserControl1 : UserControl 
    { 
    public UserControl1() 
    { 
     InitializeComponent(); 
    } 

    public void Do() 
    { 

    } 
    } 

その後、私の生成シムはDo()メソッドが含まれています参照番号PresentationFramework dllを作成し、それに対して偽を生成します。

その後、あなたは(スクリーンショットを参照)、次のインスタンス・プロパティを割り当てるようになるだろう: Screenshot

関連する問題