Visual Studio 2010如何确定哪些项目是测试项目?

时间:2014-06-18 21:12:19

标签: c# visual-studio-2010 unit-testing mstest

我最近由团队成员制作了一个项目。我添加了一些类,并希望对它们进行单元测试。我将项目添加到我们的单元测试解决方案中,但是我无法右键单击任何功能并选择"创建单元测试"。我找到了在命令窗口中手动键入EditorContextMenus.CodeWindow.CreateUnitTests的解决方案,但后来我收到错误"只有非测试项目支持测试生成。"

我搜索了" test"通过整个项目,只提出PopulateStructure所以没有测试属性的功能。我删除了一个对Microsoft.VisualStudio.QualityTools.UnitTestFramework的迷路引用,团队成员说这些引用已被Visual Studio自动插入。我编译时参考文献没有回来,但我仍然无法自动生成测试。

我搜索了[AssemblyInfo.cs之外的唯一属性就是我们自己的属性:

[AttributeUsage(AttributeTargets.All)]
public class OurAttribute_C : System.Attribute
{
    ...

我在这个项目文件和我测试的另一个项目文件之间做了一个差异,没有看到任何明显的东西。与AssemblyInfo文件相同。

我知道我可以在没有工具的情况下手动创建测试,但为什么VS2010认为这个项目是一个单元测试项目?

在搜索中我发现很多关于VS2012测试版完全没有这个功能的抱怨,我在其他项目中的功能就是这个。有几个地方有相关的投诉,但没有答案。

类似(略有不同)的问题没有答案:Unit test generation error in Visual studio website project?

1 个答案:

答案 0 :(得分:0)

当您创建“测试”项目时,您是否选择了测试项目类型?

在csproj中,有一个名为ProjectTypeGuids的标记,它为项目提供了一种类型或类型列表,供IDE了解要使用的IDE工具。您可以在csproj中手动编辑它。

Here是一份非明确的GUIDS列表

最简单的方法就是杀死该项目并从正确的模板创建一个新项目。