草庐IT

SpringBoot测试

全部标签

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# - 如何组织单元测试而不让重构成为噩梦?

我目前组织单元测试的方式归结为以下几点:每个项目都有自己的单元测试专用项目。对于项目BusinessLayer,有一个BusinessLayer.UnitTests测试项目。对于我要测试的每个类,测试项目中都有一个单独的测试类,位于与被测类完全相同的文件夹结构和完全相同的命名空间中。对于来自命名空间BusinessLayer.Repositories的类CustomerRepository,在命名空间BusinessLayerUnitTests.Repositories中有一个测试类CustomerRepositoryTests>.每个测试类中的方法都遵循简单的命名约定MethodNa

c# - 是否可以通过模拟/伪造来使丢失的锁导致测试失败?

我正在围绕Dictionary编写一个精简的包装器,该包装器设计为线程安全的。因此,需要一些锁,并且大部分逻辑都是围绕确保事物被正确锁定并以线程安全的方式访问。现在,我正在尝试对其进行单元测试。我想进行单元测试的一件大事是锁定行为,以确保它是正确的。但是,我从来没有在任何地方看到过这样做,所以我不确定该怎么做。另外,我知道我可以只使用一堆线程向墙上扔东西,但是对于这种类型的测试,不能保证它在出错时会失败。这取决于操作系统定义的线程调度行为。有哪些方法可以通过单元测试确保我的锁定行为是正确的? 最佳答案 锁定只是一个实现细节。您应该模

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

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

c# - 如何在 Visual Studio 的 R# 单元测试 session 窗口中通过单元测试输出彩色文本?

如何在VisualStudio的ReSharper单元测试session窗口中通过单元测试输出彩色文本。我正在使用ResharperVS插件,我认为它会生成单元测试窗口。我将其与nunit一起使用,并希望使用c#Console.Write为该窗口生成彩色文本。 最佳答案 我认为这是不可能的。您可以使用Debug.WriteLine()或Console.WriteLine()将文本写入此窗口。您想如何传递有关颜色的信息?我试了两次:HTML未解析未解析richtext格式我没有其他想法,我不认为它以某种方式起作用。

c# - 极端内存条件测试 : How to saturate RAM?

我想写一小段程序来启动线程,以线性方式消耗可用的RAM内存,直到达到一定水平,然后停止(理想情况下,暂停直到“足够”的内存被释放,然后继续创建线程,依此类推。)我尝试了以下操作,但是list.Add(newbyte[])需要连续的RAM空间并抛出一个OutOfMemoryException,这不是我想要的模拟。编辑:我有一个多线程的内存消耗型应用程序,它占用了一大堆RAMGB。我想要的只是在“实验室条件”中隔离/重现这种情况以解决它,即编写自适应内存监控/线程限制器草案。我正在使用x64操作系统和x64平台。说清楚:我想看到的结果是任务管理器内存监视器由于程序而直线上升。staticv

c# - 常见数据结构的引用单元测试?

我正在编写一个类库,其中包含常见数据结构(列表、集合、字典...)的几个专门实现。我发现自己总是一遍又一遍地编写相同的单元测试,而且我不确定我没有忘记测试一些重要的场景。由于我的类都实现了标准接口(interface)(IList、IDictionary等),我想知道是否存在这些接口(interface)的所有实现都应该通过的某种“引用”单元测试。当然,我还需要测试我的类的特定方面,但至少我会更有信心,我的标准接口(interface)实现没有任何问题。 最佳答案 你可以看看MonounittestsonGithub-那里至少有Di

c# - 无法使用 Effort 框架在单元测试中使用现有数据库

我正在尝试使用托管在AzureSQL中的数据库编写测试,EffortEntityFramework6上的框架。执行以下代码时,抛出异常:[ClassInitialize]publicstaticvoidClassInitialize(TestContextcontext){EffortProviderConfiguration.RegisterProvider();}[TestMethod]publicvoidTestMethod1(){conststringconnectionString="DataSource=***;InitialCatalog=my_catalog;UserI

c# - 使用 Arrange-Act-Assert 进行单元测试时是否推荐标题注释?

我发现按照AAA模式中的建议对单元测试语句进行分区的概念很有用。我倾向于添加标题注释,以便测试看起来像这样://Arrangeinta=1;intb=2;//Actintc=a+b;//AssertAssert.AreEqual(3,c);但我很好奇,总是包含这些标题注释是否正常?...或者这是我应该避免的事情?inta=1;intb=2;intc=a+b;Assert.AreEqual(3,c); 最佳答案 一旦理解了基本前提,这似乎并没有增加太多值(value)。既然你提到了C#,我建议看看TheArtofUnitTesting

c# - 使用泛型的 xUnit 理论测试

在xUnit中,我可以有一个使用这种形式的泛型的Theory测试:[Theory][MemberData(SomeScenario)]publicvoidTestMethod(TmyType){Assert.Equal(typeof(double),typeof(T));}publicstaticIEnumerableSomeScenario(){yieldreturnnewobject[]{1.23D};}这将给我通用T参数作为double。是否可以使用MemberData为具有如下签名的测试指定泛型类型参数:[Theory][MemberData(SomeTypeScenario)