5

ライブラリの実装とは別にテストできるように、コードで参照するライブラリに (Visual Studio 2012 Ultimate で) Fakes アセンブリを追加しようとしています。私が抱えている問題は、参照されているアセンブリを右クリックして [偽のアセンブリを追加] をクリックすると、次のメッセージが表示されることです。

「アセンブリはサポートされていません Fakes はこのアセンブリをサポートしていません。」

このメッセージをグーグルで検索してみましたが、引用符で囲んだ場合は結果が 0 になり、引用符で囲んでいない場合は何も関連がありません。他の誰かがある時点でこの問題に遭遇したことが予想されるので、これは非常に奇妙だと思いましたが、とにかく...

メッセージの検索をあきらめた後、Microsoft Fakes がサポートするアセンブリの種類を教えてくれる場所を探してみましたが、これも無駄でした。

私の質問は次のとおりだと思います: Microsoft Fakes がサポートしている/サポートしていないアセンブリの種類を知っている人はいますか?

特にこれがサポートされていない理由を誰かが知っている場合に備えて、参照しているアセンブリに関するいくつかの情報を含めました。 -COM Interop アセンブリです。-ActiveX コンポーネントです。・名前が強くない。

どんなリードでも大歓迎です。

4

1 に答える 1

0

正直なところ、あなたが言及したことはおそらく問題ではありません。たとえば、Excel 相互運用クラスを偽造することは完全に可能です (使用できるわけではありません!)。

しかし、スタブには継承が必要なためスタブを許可しないシール クラスや、シムを制限する一部のリフレクション クラスなど、フェイクをサポートしていないものを見てみると、一部のクラスにはどちらも含まれていないため、許可されていることが明らかです。偽造可能なコンポーネントを持たないdll。そこでできることはあまりありません。

さらに、MSDNShims cannot be used on all types from the .NET base class library mscorlib and System.は言います。

于 2013-10-08T23:33:27.780 に答える