私が作成したポータブルクラスライブラリを単体テストしようとしています。ターゲットと同じフレームワークサブセットでテストされていることを確認します。.NETポータブルクラスライブラリ用の単体テストアセンブリを作成する方法を教えてください。
Per the Visual Studio ALM + Team Foundation Server blog、MSTestユニットテストフレームワークはVisual Studio 2012 RCでPCLに変換されました。しかし、移植可能なクラスライブラリを作成してからVS2012 RTMで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
バージョンを参照しているという警告が表示されます。
私はC:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\MSTestFramework\11.0\References\CommonConfiguration\neutral\Microsoft.VisualStudio.TestPlatform.UnitTestFramework.dll
で異なる MSTestをアセンブリを参照するプロジェクトのタイプUnit Test Library (Windows Store apps)
があること(早期の回答のおかげで)見つけました。このプロジェクトタイプは、マニフェストとすべてを備えた、小さなUIなしのWindowsストアアプリを作成します。また、私が対象としているフレームワークを指定することもできません。Windows Storeアプリケーションの場合にのみ表示されます。私は図書館、被試験と同じフレームワークのサブセットをターゲットユニットテストアセンブリと私のポータブルクラスライブラリプロジェクトをテストする必要があります潜在的に障害のある仮定の下で
...
私はどのように作成します.NETポータブルクラスライブラリの単体テストアセンブリ
(私は考慮にこれをとっているMSTestを以外の他のソリューションのちょうど現在気づかないよ、また、PCLを標的とする他のフレームワークをオープンしています。)
私はこれがどのようにここで質問者を助けているのか分かりませんか?質問をしようとしている場合は、詳細を述べ、新しい質問を開きます。 –
このアセンブリリファレンスへの「適切な」方法は、「ファイル」 - >「新規プロジェクト」 - >「Windowsストア」 - >「ユニットテストライブラリ」(Windowsストアアプリケーション)です。これにより、テストランナはテストを実行できます。もちろん、これはマニフェストとすべての "アプリケーション"を作りますが、実際には "ポータブルクラスライブラリ"ではありません。より公式にサポートされている別の方法を見つけることができるかどうかがわかります。そうでない場合は、私が得た答えに近いかもしれませんか? –
私は上記の情報で質問を更新しました。私は何らかの形で私がどのフレームワークをターゲットにしているのかを指定できる答えを得たいと思っていますが、それはあまりにも多くのことを求めているかもしれません。我々は見るであろう。 –