NUnit在程序集中找不到测试

时间:2009-03-06 10:01:29

标签: c# nunit mstest

我继承了MSTest的程序集,但这些测试是在构建机器上使用nunit-console运行的(不确定它是如何工作的)。所以我决定将它排序并将其更改为正确的NUnit测试,但现在nunit-console(或gui)找不到任何测试。它们使用ReSharper测试运行器运行得很好。知道可能会遗漏什么吗?

3 个答案:

答案 0 :(得分:12)

检查:

  • 班级公开吗?
  • 是否有公共无参数构造函数(例如,如果未指定任何其他构造函数,则为默认构造函数)
  • 是否在班级有[TestFixture]属性?
  • 每个测试都公开吗?
  • 每个测试都有[Test]属性吗?
  • 每个测试是否无参数?

我相信某些版本的NUnit能够根据其名称找到测试,例如TestFooBarBaz()没有[Test]属性,但我不知道现在的状态是什么 - 它可以解释这种差异。

答案 1 :(得分:2)

感谢大家的帮助。升级到最新的NUnit框架修复了问题(你建议的所有显而易见的事情都可以)。

Frederik Gheysels,我猜你也可以试试。

答案 2 :(得分:1)

您的测试装置,课程和方法是否公开?他们必须让NUnit才能找到它们。