2012-09-21 75 views
20

我有一個示例解決方案,其中一個測試項目有一個不同的「測試」圖標,但另一個測試項目沒有。Visual Studio 2012顯示測試項目的錯誤圖標

Test Icon

我想,也許這個項目類型GUID是在這個項目上有所不同,但在解決方案文件都具有相同的項目類型(C#)

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DomainModel.Tests", "DomainModel.Tests\DomainModel.Tests.csproj", "{61A4733D-4C5B-4705-98CB-8048751BBEFA}" 
EndProject 
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Extensions.Tests", "Extensions.Tests\Extensions.Tests.csproj", "{1D6AA1C5-1FEC-44E4-9258-ACF84A20353C}" 
EndProject 
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Repository.Tests", "Repository.Tests\Repository.Tests.csproj", "{248434B7-3690-4705-85F0-66B765AEB431}" 
EndProject 

而且在每個項目文件他們有idential項目類型(測試和C#)

<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 

爲什麼DomainModel.Tests有正確的測試圖標,但Extensions.Tests和Reposito ry.Tests有一個簡單的C#庫圖標?

+0

報告這在connect.microsoft.com –

+3

完成:https://connect.microsoft。 com/VisualStudio/feedback/details/764003/visual-studio-2012-displays-wrong-icon-for-test-project – Fenton

+0

我會查看csproj中的一個正確的,一個不正確。然後,我會找到每個「ProjectGuid」,然後在.sln文件中進行搜索以找到它們連接的位置並尋找差異。希望這是有道理的。我有同樣的問題,但不幸的是,我甚至沒有一個顯示正確的。 –

回答

16

當從類庫項目開始,然後從那裏添加測試類時,VS2013中也會發生這種情況。

添加下面的子節點,以在項目文件的主要的PropertyGroup節點修復在這種情況下,圖標:

<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 
+0

這就是我所做的。你的解決方案是現貨。謝謝! – Dave

+0

非常感謝!我用這個技巧來強制類庫的測試圖標與[xUnit](https://xunit.github.io/)測試。 –

+0

即使我已經添加了這個問題沒有解決。 –

2

VS2012 Update 2(VS2012.2)中未解決此問題。

如果在此之前的季度更新中沒有修復,我認爲它將在Visual Studio的下一個版本中修復。隨着所有微軟的發佈週期縮短(大約12個月),那麼我們不應該有那麼長時間的等待;至少與我們過去不得不等待多長時間相比! :-)

3

這是在Visual Studio 2013預覽中修復的。