草庐IT

c# - 在 NUnit 2.5 中使用 Lambda 作为约束?

根据CharliePoole'sNUnitblog,在NUnit2.5中可以使用Lambda表达式作为约束。我似乎无法让它工作?我正在使用NUnit2.5.3.9345。使用博文中的示例lambda:[TestFixture]publicclassClass1{[Test]publicvoidsomeTest(){int[]array={1,2,3,4};Assert.That(array,Is.All.Matches((x)=>x%4==0&&x%100!=0||x%400==0));}}编译器的结果是:“无法将lambda表达式转换为类型‘NUnit.Framework.Const

c# - 如何在 NUnit 中编写集成测试?

我们是两个正在写学士论文的学生,我们开发了一个Windows应用程序,它应该能够在各种沟通过程中帮助餐厅。从根本上说,它应该能够从客人发送给它的那一刻起就显示有关订单的信息。我们在开发过程中省略了测试,但现在决定编写单元测试。尽管如此,我们发现我们现在可以写入系统的最合适的测试是集成测试,因为我们类中的所有方法都通过LINQtoSQL绑定(bind)到SQL存储过程。我们知道使用stub来伪造对数据库的依赖性,但是当我们的数据库已经与所有功能一起实现时,我们认为将几种方法作为集成测试一起测试会给我们带来更多值(value)。如以下代码所示,我们已尝试遵循单元测试的指南,但这是编写集成测

c# - 使用 Moq、Silverlight 和 NUnit 进行单元测试

我正在尝试对Silverlight3项目进行单元测试。我正在使用:Moq.Silverlight(3.0.308.2)NUnitSilverlight(http://www.jeff.wilcox.name/2009/01/nunit-and-silverlight/)当我编写不使用Moq的测试时,它会正常工作。当我在测试之外使用Moq时,Moq可以正常工作。(我模拟了一个界面并在按钮处理程序中进行了验证作为证明。)但是当我运行一个使用Moq的单元测试时,我总是得到这个:System.IO.FileNotFoundException:Couldnotloadfileorassembly

c# - Nunit 未在测试项目类库 (VS2012) 中遇到断点

我有一个控制台应用程序,我向项目添加了一个类库解决方案来进行我所有的单元测试。除了在我运行测试时没有命中断点这一事实外,一切正常。如果我运行整个应用程序,控制台应用程序上的断点会正常命中。如果我运行测试,测试类和控制台应用程序中的断点将被完全忽略。我看到另一篇文章说去调试>启动新实例,但由于它是一个类库,我不能这样做。我应该在不同的项目类型中进行测试吗?我正在使用Nunit、VS2012和NUnit运行程序。我有几个测试失败了,我不知道为什么,我真的需要能够单步执行代码。非常感谢任何帮助。 最佳答案 与其运行您的测试,不如尝试调试您

c# - NUnit - 重复测试用例 3 次,如果失败

我的网站UI自动化测试用例很少。如果第一次和第二次都失败了,我想至少尝试我的测试用例三次。这样,我想确保这个测试用例一直失败。如果我们可以选择在NUnit中使用,请告诉我。我将C#与NUnit一起使用。 最佳答案 你可以在nunit中根据属性repeat添加一个新的属性并重建库。非常简单。[Test][Repeat(25)]publicvoidMyTest(){//yourtestlogichere} 关于c#-NUnit-重复测试用例3次,如果失败,我们在StackOverflow上找

c# - 调试在 NUnit 下运行的测试

我有一个.NET4.0C#解决方案,其中包含一个在NUnit下运行单元测试的测试项目。NUnit二进制文件是v3.5。我可以很好地运行测试,但我无法在VisualStudio中设置断点和单步执行。我猜这是由.NET版本不匹配引起的。有没有办法使用NUnitforv3.5单步执行v4.0测试程序集? 最佳答案 问题是,除非您另有说明,否则NUnit会在确定有必要时生成一个子进程来运行测试。如果你在Process Explorer观看,您可以看到“nunit-console.exe”*生成了“nunit-agent.exe”*。Visu

c# - NUnit 不遵守属性继承

我对NUnit有疑问-想知道是否有人有任何想法。我们使用的是NUnit2.5.3.9345和C#3.5。采用以下代码:publicclassUnitTestBase{[TestFixtureSetUp]publicvoidSetUpTestFixture(){//Dosomethinginbase}}[TestFixture]publicclassSomeTestClass:UnitTestBase{[TestFixtureSetUp]publicvoidFixtureSetUp(){//Dosomethingintestclass}[Test]publicvoidSomeTest()

c# - 使用 nunit 重新加载 app.config

我有多个NUnit测试,我希望每个测试都使用特定的app.config文件。有没有办法在每次测试前将配置重置为新的配置文件? 最佳答案 尝试:/*Usage*using(AppConfig.Change("my.config")){*//dosomething...*}*/publicabstractclassAppConfig:IDisposable{publicstaticAppConfigChange(stringpath){returnnewChangeAppConfig(path);}publicabstractvoidD

c# - 如何在运行时从 NUnit 测试运行中获取单元测试方法属性?

我将有关给定测试的各种信息(多个错误跟踪系统的ID)存储在一个属性中,如下所示:[TestCaseVersion("001","B-8345","X543")]publicvoidTestSomethingOrOther()为了在测试过程中获取这些信息,我写了下面的代码:publicstringGetTestID(){StackTracest=newStackTrace(1);StackFramesf;for(inti=1;i().First();returntcv.TestID;}}}问题在于,在Release模式下通过NUnit运行测试时,应该具有测试名称和这些属性的方法被替换为以

c# - 延迟的 NUnit 断言消息评估

我的测试代码中有这个断言Assert.That(()=>eventData.Count==0,Is.True.After(notificationPollingDelay),"Receivedunexpectedeventwithlasteventdata"+eventData.Last().Description());在一段时间后断言某些条件,失败时会产生一条消息。它无法运行,因为消息字符串是在断言开始时构造的,而不是在断言结束时构造的。因此eventData集合仍然是空的(因为它最初是空的)并且尝试获取集合中最后一项的Description失败。在NUnit中是否有解决方法或合适