jjzjj

nunit-addins

全部标签

c# - NUnit 不能很好地与 Assert.AreEqual 配合使用

我是单元测试的新手,尤其是NUit。我只是从书中输入一些涉及Java和JUnit的示例。但我改用C#。问题是:我有一个带有重写方法的类,例如Equals()和GetHashCode(),但是当我尝试比较的两个对象时这个类Assert.AreEqual()我的代码没有被调用,所以我得到一个异常。Assert.True(MyClass.Equals(MyClass2))运行良好。但我不想使用此构造代替Assert.AreEqual()。问题出在哪里?这是类:publicclassMoney{publicintamount;protectedstringcurrency;publicMone

c# - 使用 NUnit 在不同的应用程序域中运行单元测试

我似乎遇到了一个问题,我们正在使用的应用程序使用Ninject内核,并包含一个特定配置,该配置与WCF调用的内容(用户名、token...)一起收集。基于特定配置,用户被分配了对应用程序的权限,这通过Ninject内核中的特定实例被屏蔽。我们不能只重构Ninject内核,我们想要做的是运行几个Nunit测试,但在单独的应用程序域中运行它们中的每一个(每次都使用不同的设置重新创建内核)。我只找到了在不同的应用程序域中运行整个测试项目的方法,而不是针对每个测试进行测试。有办法解决吗?不幸的是,Ninject配置不在我们身边,我们必须以这种方式“忍受”它。 最佳答

c# - 在 NUnit 参数化测试中找不到合适的构造函数

查看下面的测试夹具:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingNUnit.Framework;//////TestsrelatingtoHarryPotter///[TestFixture("Dumbledore")]publicclassHarryPotterTests{publicstringName;publicHarryPotterTests(stringpersonName){Name=personName;}[Test]publicvoidTest()

c# - 我如何使用 NUnit 创建一个通用的 BaseTest,我可以从它继承并从 base 运行测试?

所以基本上我有一个域对象和一个可以对该对象执行CRUD操作的通用存储库。publicinterfaceIBaseRepositorywhereT:BaseEntity{voidAdd(Tentity);voidRemove(Tentity);TById(intid);IEnumerableAll();}所以我有这个接口(interface)的多个实现,每个域对象一个。我想写一些集成测试(使用nunit),为此我想我会做一个BaseRepositoryTest-像这样:publicabstractclassBaseRepositoryTestswhereT:BaseEntity{publ

c# - NUnit 未运行套件测试

我在NUnit中创建了一个测试套件,它引用了各种程序集中的几个不同的单元测试装置。我几乎使用了NUnit'sdocs中的示例代码:namespaceNUnit.Tests{usingSystem;usingNUnit.Framework;usingSystem.Collections;publicclassAllTests{[Suite]publicstaticIEnumerableSuite{get{ArrayListsuite=newArrayList();suite.Add(newVisionMap.DotNet.Tests.ManagedInteropTest.DotNetUt

c# - 调试 NUnit 测试的最佳方法是什么?

我的平台:带有NUnit2.2.7的VisualC#2008ExpressEdition我有一个解决方案,我的代码在一个项目中,而我的NUnit单元测试在同一解决方案的不同项目中。我一直在努力调试和单步执行NUnit测试。我在网上找到了一些建议调用以下内容的引用资料:NUnit.ConsoleRunner.Runner.Main(args);但这甚至无法编译-它有编译错误:Error1Thetypeornamespacename'Runner'doesnotexistinthenamespace'NUnit.ConsoleRunner'(areyoumissinganassemblyr

c# - NUnit 中的数据驱动测试?

在MSTest中,您可以执行以下操作:[TestMethod][DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV","testdata.csv","testdata#csv",DataAccessMethod.Sequential)]publicvoidTestSomething(){doublecolumn1=Convert.ToDouble(TestContext.DataRow["column1"]);...Assert.AreEqual(...);}NUnit2.5中的等效代码是什么?

C# 单元测试 (Nunit) 控制台应用程序的主要方法?

我对控制台应用程序的Main方法进行单元测试有疑问。标准签名是publicstaticvoidMain(string[]args)我希望能够进行测试以确保只传入1个参数。如果传入了多个参数,我希望测试失败。我不认为我可以用MOQ来模拟它作为它的静态方法。谁有这方面的经验?有什么想法吗?谢谢 最佳答案 在您的场景中没有什么可模拟的。静态Program.Main是一种与任何其他方法一样的方法,您可以通过调用它来测试它。staticvoid方法的问题是您只能验证它是否抛出异常或与输入参数(或其他静态成员,最终)交互。由于在string[]

c# - 使用 NUnit 进行单元测试时获得所需/正确的装配路径

我刚刚开始试验最小起订量以对我的模块进行单元测试。实际上,我必须为其编写单元测试的类使用Assembly.GetExecutingAssembly().Location在内部确定路径。但是,这在编写单元测试时不起作用,因为执行程序集的路径不同(采用单元测试程序集的路径)AppData\\Local\\Temp\\3ylnx32t.ukg\\TestApplication.Test\\assembly\\dl3\\aeb938e6\\f3664631_d982ce01。我试过了,禁用卷影复制。AppDomainSetupappDomain=newAppDomainSetup{Shadow

c# - nUnit 下的 Contains 中不区分大小写的比较

我试图断言列表包含特定字符串。由于我需要不区分大小写地评估条件,因此我使用了一个解决方法(沿着thisblogpost的东西)。但是,我想知道为什么似乎没有办法让Assert.Contains方法执行不区分大小写的比较。或者有没有办法做到这一点?(当我用谷歌搜索时,我只在nUnit的官方页面上找到了Assert.That方法的约束。) 最佳答案 无法在Assert.Contains中指定ignoreCase。我不知道这是被忽视还是有意为之。但是,您可以使用StringAssert.AreEqualIgnoringCase(left,