2012-09-21 61 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预览中修复的。