簡體   English   中英

Visual Studio 2010 是否只運行 4.0 單元測試?

[英]Will Visual Studio 2010 only run 4.0 unit tests?

我有用 .NET 3.5 編寫的不同項目和一些單元測試項目來覆蓋它們。 將我的解決方案轉換為在 Visual Studio 2010 中使用時,我將所有項目保留在 3.5 中,但單元測試被強制為 4.0? 這樣我就不能再在我的常規項目中使用它們了。

結果是:無法加載文件或程序集“xxx.xxx.Core.UnitTest”或其依賴項之一。 此程序集由比當前加載的運行時更新的運行時構建,無法加載。

所以我不能對低於 4.0 的任何項目進行單元測試? 或者我在這里做錯了什么?

目前令人遺憾的答案是肯定的 - 僅支持使用 VS2010 (.NET 4.0) 創建的測試。

顯然這是故意完成的 - 請查看Microsoft Connect上的這個“錯誤”報告以了解詳細信息。

更新
在微軟看到他們的方式錯誤后,他們在 VS2010 SP1 中添加了 .NET 3.5 單元測試支持——完整的細節可以在這篇文章中找到。

您還可以重新定位現有的 .NET 4.0 單元測試 - 如何在 VS 2010 SP1 中將單元測試重新定位到 .Net Framework 3.5

雖然測試項目被轉換為 Visual Studio 2010 測試項目並針對 .NET 4.0 框架進行編譯,但幸運的是,您在測試中引用和測試的所有程序集仍然可以是 .NET 3.5(或其他)程序集。 否則將是災難性的。 但是是的,您不能再使用 Visual Studio 2008 來運行這些測試項目。

當然,一種解決方法是保留測試的源代碼,但有兩個不同的測試項目,一個用於 VS2008,另一個用於使用相同測試源代碼的 VS2010。 麻煩,但一個有效的解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM