为什么我的测试项目没有出现在测试资源管理器上

时间:2013-05-05 13:48:18

标签: c# c++ vb.net unit-testing visual-studio-2012

我正在使用VS2012(v110) 我创建了一个简单的dll应用程序,只有一个函数和一个测试项目来测试dll函数。我将这两个项目设置为win32的调试版本,并尝试清理并重建两个项目但我没有看到任何测试要在测试资源管理器窗口上运行。

我还在测试项目中引用了Dll项目。

为什么Test Explorer窗口中没有显示任何内容?

4 个答案:

答案 0 :(得分:4)

实际上MSTest不适用于简单的类库项目。 您必须创建一个单元测试项目并将测试放在那里。

如果您使用其他测试框架(如NUnit),则可以使用普通类库。然后,您可以使用NUnit在VS外部运行测试,或使用ReSharper等工具在VS中运行这些测试

答案 1 :(得分:3)

看起来你已经使用了一些MSTest以外的测试框架。如果您想将Test Explorer用于其他一些框架,您也应该安装它的跑步者。例如,NUnit需要在VS.NET中安装其测试适配器和扩展名

请参阅here for more

答案 2 :(得分:0)

您应该能够修改现有的类库项目,以通过修改.csproj文件中的ProjectTypeGuids来让mstest将其识别为测试项目,详见本答案How to get VS2010 to recognize my mstests generated by SpecFlow?(查找列出的答案)特定的指导,而不是目前接受的答案,即只是创建一个新项目。)

答案 3 :(得分:0)

有一个类似的问题。解决了它。我一直在为我的VS 2012解决方案添加测试项目,测试没有出现在测试资源管理器中。问题是测试项目位于IIS inetpub \ wwwroot文件夹中,该文件夹没有Windows用户权限来修改它。添加解决方案文件夹Windows用户权限修改它解决了问题。测试现在可以在测试资源管理器中看到,并且可以进行调试。我假设vstest.discoveryengine.exe进程是由windows用户运行的,无法访问测试项目文件