我正在嘗試單元測試我創建的可移植類庫,並且要確保它正在使用與其目標相同的框架子集進行測試。如何爲.NET Portable Class Library創建單元測試程序集?
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
版本。
我沒有找到(感謝早期的答案),有一個項目類型Unit Test Library (Windows Store apps)
,在C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0\ExtensionSDKs\MSTestFramework\11.0\References\CommonConfiguration\neutral\Microsoft.VisualStudio.TestPlatform.UnitTestFramework.dll
引用不同 MSTest的組裝。此項目類型創建一個小的無UI Windows應用程序...完整的清單和一切。它也不允許我指定我定位的框架 - 它似乎只適用於Windows應用商店應用。
下潛在的故障假設,我應該用針對同一個框架子集作爲圖書館被測單元測試組件是測試我的便攜式類庫項目...
如何創建一個.NET Portable Class Library的單元測試程序集?
(我開到其他框架,也針對PCL,我只是不知道目前除了MSTest的其他解決方案已經考慮到這一點的。)
我不確定這是如何幫助查詢者在這裏?如果您試圖提問,請提供詳細信息並提出新問題。 –
看來這個程序集引用的「正確」方式是執行文件 - >新建項目 - > Windows應用商店 - >單元測試庫(Windows應用商店應用)。這允許測試運行者執行測試。當然,這使得一個帶有清單和所有東西的完整「應用程序」,這不是真正的「便攜式類庫」。我會看看我是否能找到更「正式」支持的不同方式。如果沒有,也許這與我的答案接近? –
我用上面的信息更新了我的問題。我真的希望得到一個答案,我可以在某種程度上允許指定我所針對的框架,但也許這太需要了。我們將看到。 –