作成したポータブルクラスライブラリの単体テストを試みていますが、ターゲットと同じフレームワークサブセットでテストされていることを確認したいと思います。
Visual Studio ALM + Team Foundation Serverのブログによると、MSTest単体テストフレームワークはVisual Studio2012RCでPCLに変換されました。ただし、ポータブルクラスライブラリを作成してから、VS2012RTMでMSTestフレームワークを参照することはできません。
- [参照]ダイアログを参照すると、PCLと互換性のある単体テストコンポーネントが登録されていないことがわかります。
- プロジェクトファイルに手動GAC参照を追加して
Microsoft.VisualStudio.QualityTools.UnitTestFramework
、参照が見つからないビルドエラーを生成します。 - に手動の直接アセンブリ参照を追加する
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ReferenceAssemblies\v4.0\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
と、UnitTestFrameworkアセンブリが互換性のないmscorlib
バージョンを参照していることを示すビルド警告が生成されます。
に別のMSTestアセンブリUnit Test Library (Windows Store apps)
を参照するプロジェクトタイプがあることがわかりました(初期の回答のおかげで)。このプロジェクトタイプは、UIのない小さなWindowsストアアプリを作成します...マニフェストとすべてを完備しています。また、ターゲットとするフレームワークを指定することもできません。これは、Windowsストアアプリ専用のようです。C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\MSTestFramework\11.0\References\CommonConfiguration\neutral\Microsoft.VisualStudio.TestPlatform.UnitTestFramework.dll
テスト対象のライブラリと同じフレームワークサブセットを対象とする単体テストアセンブリを使用して、ポータブルクラスライブラリプロジェクトをテストする必要があるという誤った想定の下で...
.NETポータブルクラスライブラリの単体テストアセンブリを作成するにはどうすればよいですか?
(私はPCLを対象とする他のフレームワークを受け入れていますが、これを考慮に入れているMSTest以外の他のソリューションについては現在気づいていません。)