2011-01-18 21 views
8

Windows Phone 7用のモックフレームワークはありますか?または手動で偽物を作成する必要はありますか?Windows Phone 7モッキングフレームワーク?

私はGoogle上に何も見つかりませんでしたが、私はMoqがWP7のリソースページに記載されていることがわかりましたが、私はそれを動作させることができませんでした。

答えて

14

WP7をサポートするMockingフレームワークはありません。WP7がReflection.Emitをサポートするまで、WP7をサポートするフレームワークはありません。

.netフレームワークには、模擬フレームワーク(Profiler API、CodeDem、Refleciton.Emit、その他)を作成するために存在するmany optionsがあります。これらのテクニックの大部分は、BCL/CLRがかなり欠落しているため、Silverlight自体では機能しません。すべての既存のSilverlightモッキングフレームワークはReflection.Emitを使用します。 WP7はReflection.Emitをサポートしていないため、WP7ではSilverlightのmockingフレームワークは動作しません。

この理由から、私は個人的にWP7アセンブリをSilverlightランタイムでテストします。それは最適ではありません(それは吸う)が、それは状況の下で行うことができる最高です。

理論的には、ポストビルドMSIL製織を使用するMockingフレームワークを構築できますが、これはWP7で動作するはずですが、まだ実行されていません。

あなたはWP7はReflection.Emitこのユーザーボイスの問題の投票を検討サポートしたい場合は

WP7 should support Reflection.Emit for Mocking frameworks

EDIT 2011年2月12日: Refleciton.Emitはマンゴーでサポートされています。やめ! Reflection.EmitベースのMockingフレームワークはうまくいくはずです。

+0

** EDIT 2/12/2011 **について - System.Reflection.Emit名前空間は存在しますが、WP7 Silverlightの中に含まれている具体的なクラスは、私が見る限り大きく減少しています。あなたは黙って行くのに十分なものがあるかどうか知っていますか? –

+1

私はWindows Phone 7用の模擬フレームワークの初期バージョンをリリースしました:http://moqalate.codeplex.com/ http://www.dontcodetired.com/blog/post/Introducing-%28probably%29-The -Worlds-Only-Mocking- Windows用フレームワーク-Phone-7-%28WP7%29.aspx –

4

現在利用できるものはありません。

This article by David Gaddは、手動で作成された偽のオブジェクトを使用して電話機でテストする例を示しており、有用なリソースになる可能性があります。

0

Silverlight 3をサポートするどんなモッキングフレームワークもWindows Phone 7で動作するはずです。ただし、以前のバージョンのフレームワークを使用してSilverlight 3に "ダムダウン"する必要があります。

3

私はちょうどを得て、それはWindows Phone 7(sortof)で動作します。

デフォルトのVisual Studio Testプロジェクトを作成する必要があります.Windows Phone 7プロジェクトを参照できないというエラーが表示されますが、何らかの理由でMockとTestsが完全に機能します。

とにかく、私はそれが作成できるモックに本当に満足しています。

0

はちょうど私がMSDNにあるいくつかの情報に注意してくださいしたい:

http://msdn.microsoft.com/en-us/library/hh821022.aspx#sec2

、Windowsの携帯電話プラットフォーム上でモックフレームワークを使用することはできませんようモッククラスを手動で開発されました。 Mockingフレームワークでは、現在のところWindows Phoneプラットフォームでは不可能なMicrosoft中間言語(MSIL)コードを発行する機能が必要です。

関連する問題