未找到Visual Studio单元测试

本文关键字:Studio 单元测试 Visual | 更新日期: 2023-09-27 18:17:49

我正在使用Visual Studio开发c#应用程序。

在我的PC上,我已经安装了Gallio,这是一套测试工具(包括一个测试运行器)。我的单元测试是使用NUnit框架的普通单元测试。在我的电脑上,Visual Studio可以识别并运行测试。

但是当我更换电脑,或者当我从我的电脑上卸载galio时,Visual Studio无法再找到单元测试,给出如下消息:

"未运行任何测试,因为未加载任何测试或已禁用选定的测试"

我知道我的项目无法加载的原因是Gallio。当我在项目中添加测试类时,测试类型被设置为Gallio。为了让Visual Studio能够再次找到我的测试类,我尝试了几乎所有的方法,但没有任何运气。

有人有同样的问题吗?知道为什么会这样吗?

谢谢。

未找到Visual Studio单元测试

Visual Studio 2010没有NUnit的测试运行器。默认情况下,它只能执行MSUnit测试,而不使用Resharper等附加组件。Visual Studio 2012现在在其他测试框架中包含了一个NUnit运行器。

您有以下选项:

  1. 将测试移植到使用MSUnit;或
  2. 升级到Visual Studio 2012;或
  3. 安装一个内置了NUnit运行器的插件,比如Resharper。

问题是MSTest和NUnit使用不同的属性来标记测试:

// MSTest
[TestClass]
public class MsTests
{
   [TestMethod]
   public void MyMethod()
}
// NUnit
[TestFixture]
public class NUnitTests
{
   [Test]
   public void MyMethod()
}

你必须做一个交换,或者使用两者,如果你想它是可用的两个框架。然而,MSTest不喜欢带参数的方法,而NUnit喜欢。