C#.NET 4.0测试框架?

如果我没有弄错的话,NUnit是unit testing的事实上的标准,但是我刚下载它,写了一个简单的测试,然后显然我必须启动GUI并加载我的.exe程序集,这只是失败。

我试过编辑

 C:\Program Files (x86)\NUnit 2.5.7\bin\net-2.0\nunit.exe.config 

正如在这个问题中所建议的,但这也没有用,所以我尝试下载nunit源代码并在vs2010中编译它,但它甚至都没有编译。 说无法找到punit.framework.dll解决方案说“不包含AllTestsExecuted的定义”,所以我在这里有点沮丧。 您认为.net 4会有一个易于使用且运行良好的框架,不是吗?

所以我的问题是,我如何让NUnit工作,或者是否有另一个框架可以减少我的痛苦?

您不必使用NUnit GUI来运行测试。 您可以在Visual Studio中使用TestDriven.NET 。 此外,如果您碰巧使用Resharper,那么它还有一个unit testing运行器,它也适用于NUnit。

如果你没有做任何与众不同的事情,我推荐微软的unit testing框架 。 我发现它的VS集成太容易甚至担心NUnit。 我同意NUnit似乎是事实上的标准,但如果你正在寻找快速简便的东西。 对于典型的Visual Studio程序员恕我直言,微软的方式最简单。

我不是C#程序员(幸运的是:-))但是我听说过关于xUnit的好东西。 测试可以根据需要运行(命令行,GUI,Visual Studio集成等),并且使用起来看起来很合理。

对于NUnit的GUI测试运行器,请确保您选择了正确的框架版本。 它在“文件”菜单中。 如果您的测试或任何依赖项是32位,请确保您运行的是32位版本的测试运行器。

Testdriven.net是一个更好的测试运行器,但我有时也喜欢使用NUnit的GUI运行器。

NUnit实际上非常简单易用,所以我会说你更有可能在某处犯错,而不是软件。

请务必遵循本指南 。

  • 确保在正确的位置具有[TestFixture]和[Test]属性,并引用所有相关的程序集。
  • 确保在NUnit GUI中加载正确的dll。

如果它的GUI是问题,您可以使用Resharper的unit testingfunction。

如果使用Visual Studio 2010,则可以使用MSTest。 只需单击CTRL + ALT + R,它将运行您的测试并在Visual Studio中显示结果。

如果我没有弄错的话,同样的测试运行器也适用于NUnit。