草庐IT

nunit-console

全部标签

c# - Console/Win 服务应用程序不需要 ConfigureAwait(false),对吗?

我使用async/await有一段时间了,但最近深入研究,并阅读了很多最佳实践提示,默认总是使用ConfigureAwait(false)防止死锁,提高性能。我只是想确保我没有遗漏任何东西,因为我认为这仅适用于实际当前SynchronizationContext或TaskScheduler正在运行的情况,对吗?如果我有一个正在响应消息/命令/等的Windows服务应用程序。异步地,它总是只使用默认的调度程序=可能等待完成的线程池线程将执行延续,因此没有死锁,使用ConfigureAwait(false)也不会产生性能差异,正确?不是我不能把它放在那里,而是我非常讨厌嘈杂的代码.....

c# - Console.ReadKey 与带有计时器的 Console.ReadLine

以下代码是一个众所周知的示例,用于显示调试版本和发布版本之间的区别:usingSystem;usingSystem.Threading;publicstaticclassProgram{publicstaticvoidMain(){Timert=newTimer(TimerCallback,null,0,2000);Console.ReadLine();}privatestaticvoidTimerCallback(Objecto){Console.WriteLine("InTimerCallback:"+DateTime.Now);GC.Collect();}}如果您使用调试配置运行

c# - 在 .NET Core 控制台应用程序中使用带有 NUnit3 的 app.config 文件

环境:目前我的解决方案中有三个项目:一个.NETStandard2.0库,其中包含一些我想测试的代码。引用该库以确保其正常工作的.NETCore2.2控制台应用。使用VS中的“NUnit测试项目”模板创建的.NETCore2.2控制台应用。我的测试项目中的依赖全部来自NuGet:起订量版本="4.10.1"nunit"Version="3.11.0"NUnit.ConsoleRunner"Version="3.10.0"NUnit3TestAdapter"Version="3.13.0"Microsoft.NET.Test.Sdk"Version="16.0.1"问题:.NET标准库依

c# - 如何修复无法加载文件或程序集 'nunit.engine,版本 = 3.7.0.0

我有一个带有单独测试项目的Web应用程序,该项目使用NUnit来运行单元测试。当我的测试项目试图发现测试时,我遇到了以下异常:Anexceptionoccurredwhiletestdiscoverer'NUnit3TestDiscoverer'wasloadingtests.Exception:Couldnotloadfileorassembly'nunit.engine,Version=3.7.0.0,Culture=neutral,PublicKeyToken=2638cd05610744eb'oroneofitsdependencies.Thesystemcannotfindt

c# - Debug.WriteLine() 与 Console.WriteLine() 处理文化的方式不同。为什么?

考虑以下控制台应用程序代码:Thread.CurrentThread.CurrentCulture=newCultureInfo("en-GB");Thread.CurrentThread.CurrentUICulture=Thread.CurrentThread.CurrentCulture;DateTimedate=newDateTime(2014,01,19);Console.WriteLine("{0}",date);//Prints19/01/2014Debug.WriteLine("{0}",date);//Prints01/19/2014Debug.WriteLine(d

c# - nunit 测试仅在作为 tfs msbuild 进程的一部分运行时抛出异常

我正在使用TFS2012从VisualStudio2015构建和部署解决方案,没有任何问题。我决定将我的单元测试作为构建过程先决条件的一部分。独立于msbuild进程,单元测试运行没有问题并成功;但是,当我将它们合并为构建过程的一部分时,我在构建中遇到以下异常:ExceptionNUnit.Core.UnsupportedFrameworkException,ExceptionthrownexecutingtestsinD:\Builds\4\PA1111CE\Dev1111dBus\bin\mmmTests.dllNotestisavailableinD:\Builds\4\PA11

c# - 为 Console.Write 添加前缀的推荐方法是什么?

我正在寻找一种向每个Console.Write[Line]插入前缀(日期和时间)的方法。我正在寻找一种推荐的方法,就像更改输出的推荐方法是使用Console.SetOut.我很清楚我可以执行String.Format("{0}{1}",DateTime.Now,msg),但我试图将其作为最后的手段。问题是输出在运行时是可变的,默认的已经附加了当前时间。如果我将它附加到我的代码中,我将复制日期。有这样的事吗?我正在使用Monotouch,所以我只能使用为其编译的库。 最佳答案 您需要inherit从System.IO.TextWrit

c# - Nunit:是否可以让测试出现嵌套

我想测试一个具有高圈复杂度的方法(叹息),我想在测试类中有一个类,这样一个方法测试类就会作为树中的一个节点出现。Nunit是否可行?如何实现?MyEntityTests|L_MyComplexMethodTestsLwhen_some_condition_thanLwhen_some_other_condition_than[TestFixture]publicclassMyEntityTests{[TestFixture]publicclassMyComplexMethodTests{[Test]publicvoidwhen_some_condition_than(){}etc...

c# - 带参数的 Nunit 测试设置方法

我们可以有一个带参数的测试设置方法吗?我需要为夹具中的每个测试进行不同的设置。我们是否有一些(或类似的方式)作为假设的想法:[SetUp][Argument("value-1")][Argument("value-2")][Argument("value-3")]publicvoidInitializeTest(stringvalue){//setenvvarwithvalue} 最佳答案 可以使用带有参数的TestFixture属性来完成。如果类中的所有测试都依赖于相同的参数,这就是方法。该类需要一个构造函数,该构造函数具有传递给

c# - 在循环外添加一个 Console.WriteLine() 会改变循环的计时 - 为什么?

考虑以下代码:usingSystem;usingSystem.Diagnostics;namespaceDemo{classProgram{staticvoidMain(string[]args){Stopwatchsw=newStopwatch();for(inttrial=0;trial当我使用VisualStudio2010在Windows7x64上编译并运行此版本的RELEASEx86版本时,我得到以下计时(在IntelCorei7上运行)loop1()took00:00:01.7935267loop2()took00:00:01.4747297loop3()took00:00