Skip to content

Console Release Notes

Rob Prouse edited this page Mar 26, 2019 · 19 revisions

NUnit Console 3.10 - March 24, 2019

This release merges the .NET Standard version of the engine back into the nunit.engine NuGet package and adds a .NET Standard 2.0 version of the engine that re-enables most services and extensions. This deprecates the nunit.engine.netstandard NuGet package. Any test runners using the old .NET Standard version of the engine should switch to this release.

The --params command line option which took multiple test parameters separated by a semicolon is now deprecated in favor of the new --testparam command line option. One of the most common uses for test parameters was to pass connection strings into tests but this required workarounds to handle the semicolons. Now you must pass in each test paramater separately using a --testparam or --tp option for each.

Issues Resolved

  • 8 TempResourceFile.Dispose causes run to hang
  • 23 In nunit3-console you cannot pass parameters containing ';' because they always get splitted
  • 178 Add date and time to console output
  • 282 "Execution terminated after first error" does not fail the console runner
  • 388 Merge .NET Standard Engine back into the main solution
  • 389 Update Mono.Cecil to latest
  • 433 All messages from EventListenerTextWriter goes to console output independent on stream name
  • 454 Misc improvements to ExtensionServiceTests
  • 455 Remove CF, Silverlight and PORTABLE functionality
  • 464 NUnit Console Reports Successful Exit Code When there is an Exception on Dispose
  • 473 ArgumentException: DTD is prohibited in this XML document
  • 476 .NET Standard engine to load extensions
  • 479 Merge .NET Standard Engine code back into the main solution
  • 483 Error in SetUpFixture does not result in non-zero exit code
  • 485 Invalid integer arguments do not display properly in error message
  • 493 Correct order of params to Guard.ArgumentValid()
  • 498 Reset console colors after Ctrl-C
  • 501 Create result directory if it does not exist
  • 502 Remove unused method from build.cake
  • 506 Dogfood NUnit.Analyzers via the nunit-console tests
  • 508 Re-Enable OSX CI tests
  • 515 Appveyor CI failing on master
  • 518 Correct Refactoring Error
  • 519 Break up multiple console error messages with colour
  • 523 Reloading multiple files causes exception
  • 524 .NET Standard 2.0 engine crashes when .NET Framework extensions are in Global NuGet Cache
  • 525 Separate NuGet Restore for Appveyor build
  • 531 Building a forked master branch results in publishing artifacts
  • 533 Duplicate ids when loading a project
  • 544 Deprecate nunit.netstandard.engine NuGet package
  • 546 Cannot run a project file using --process:Separate
  • 547 --labels=Before ignores --nocolor
  • 556 Appveyor CI failing due to nuget restore
  • 557 Disable CliFallbackFolder as a nuget source
  • 562 Fix typo in comment
  • 563 ProjectService is incorrectly initialized in agents
  • 565 Eliminate -dbg suffix from version
  • 566 SettingsService is not needed in agents
  • 567 Unnecessary call to IProjectService
  • 571 Space characters in the work directory path are not properly handled
  • 583 NUnit Console NuGet Package Doesn't Load Extensions
  • 587 Disable new MSBuild GenerateSupportedRuntime functionality, which breaks framework targetting

NUnit Console 3.9 - September 5, 2018

This release should stop the dreaded SocketException problem on shutdown. The console also no longer returns -5 when AppDomains fail to unload at the end of a test run. These fixes should make CI runs much more stable and predictible.

For developers working on the NUnit Console and Engine project, Visual Studio 2017 update 5 or newer is now required to compile on the command line. This does not effect developers using NUnit or the NUnit Console, both of which support building and running your tests in any IDE and on any .NET Framework back to .NET 2.0.

Issues Resolved

  • 103 The switch statement does not cover all values of the 'RuntimeType' enum: NetCF.
  • 218 Move Distribution back into the nunit-console project.
  • 253 Master Chocolatey issue
  • 255 SocketException thrown during console run
  • 312 CI failure: SocketException
  • 360 CommandLineOption --err does not write error input to ErrorFile
  • 367 nunit3-console loads nunit.framework with partial name
  • 370 Nunit.Console 3.8 - Socket Exception
  • 371 Remove -5 exit code on app domain unload failures
  • 394 Multi-targeted Engine Extensions
  • 399 Fix minor doccoment issues
  • 411 Make output received when providing user friendly messages unloading the domain more user friendly
  • 412 Extensions not dectected for version 3.9.0-dev-03997
  • 436 NUnitEngineException : Unable to acquire remote process agent
  • 446 Output CI version info to console
  • 448 Update vs-project-loader extension to 3.8.0
  • 450 Update NUnit.Extension.VSProjectLoader to 3.8.0
  • 456 NuGet Package : Add repository metadata.
  • 461 Use MSBuild /restore

NUnit Console 3.8 - January 27, 2018

This release includes several fixes when unloading AppDomains and better error reporting. The aggregate NuGet packages also include updated versions of several extensions.

Issues Resolved

  • 6 TypeLoadException in nunit3-console 3.0.1
  • 93 Update Readme with information about the NuGet packages
  • 111 Provide better info when AppDomain won't unload
  • 116 NUnit 3.5.0 defaults to single agent process when using an nunit project file
  • 191 Exception encountered unloading AppDomain
  • 228 System.Reflection.TargetInvocationException with nunit3-console --debug on Mono
  • 246 No way to specify app.config with console runner
  • 256 Rewrite ConsoleRunnerTests.ThrowsNUnitEngineExceptionWhenTestResultsAreNotWriteable()
  • 259 NUnit3 agent hangs after encountering an "CannotUnloadAppDomainException"
  • 262 Transform file existence check should check current directory instead of WorkDirectory
  • 267 Fix possible NRE
  • 273 Insufficient error handling message in ProcessRunner -> RunTests method
  • 275 Integrate chocolatey packages with build script
  • 284 NUnit3: An exception occured in the driver while loading tests... bei NUnit.Engine.Runners.ProcessRunner.RunTests(ITestEventListener listener, TestFilter filter)
  • 285 ColorConsoleWriter.WriteLabel causes NullReferenceException
  • 289 Warnings not displayed
  • 298 Invalid --framework option throws exception
  • 300 Agents do not respect the Console WORK parameter when writing log file
  • 304 Catch agent debugger launch exceptions, and improve agent crash handling
  • 309 No driver found if framework assembly reference has uppercase characters
  • 314 Update NUnit.Extension.VSProjectLoader to 3.7.0
  • 318 Update NUnit.Extension.TeamCityEventListener to 1.0.3
  • 320 Return error code -5 when AppDomain fails to unload
  • 323 Assertion should not be ordered in AgentDatabaseTests
  • 343 Superfluous unload error shown in console
  • 349 Get all TestEngine tests running under NUnitAdapter apart from those .
  • 350 Invalid assemblies no longer give an error message
  • 355 NuGet package links to outdated license

NUnit Console 3.7 - July 13, 2017


  • Creates a .NET Standard version of the engine for use in the Visual Studio Adapter
  • Fixes several issues that caused the runner to exit with a SocketException

Issues Resolved

  • 10 Create a .NET Standard version of the Engine
  • 11 insufficient info on driver reflection exception
  • 12 Upgrade Cake build to latest version
  • 24 Update --labels switch with option to show real-time pass/fail results in console runner
  • 31 Nunit 3.4.1 NUnit.Engine.Runners
  • 72 TestContext.Progress.Write writes new line
  • 82 Remove unused repository paths from repositories.config
  • 99 Remove unused --verbose and --full command line options
  • 126 Resolve differences between NUnit Console and NUnitLite implementations of @filename
  • 162 Add namespace keyword to Test Selection Language
  • 171 Socket Exception when stopping Remote Agent
  • 172 Limit Language level to C#6
  • 193 Settings are stored with invariant culture but retrieved with CurrentCulture
  • 194 Better logging or error handling in SettingsStore.SaveSettings
  • 196 Allow comments in @FILE files
  • 200 Remove obsolete warnings from build script
  • 206 Remove reference to removed noxml option
  • 207 Create Chocolatey package(s) for the console
  • 208 Explore flags test update
  • 213 Master build failing after merging .NET Standard Engine
  • 216 Compiling mock-assembly in Visual Studio 2017 fails
  • 217 NUnit .NET Standard NuGet package missing some values
  • 219 Runtime.Remoting.RemotingException in NUnit.Engine.Runners.ProcessRunner.Dispose
  • 221 Added missing nuget package info
  • 222 Improve missing agent error message
  • 225 SocketException thrown by nunit3-console.exe --explore option
  • 248 Agent TestEngine contains duplicate services
  • 252 Console crashes when specifying both format and transform for result
  • 254 Correct misprint ".con" -> ".com"

NUnit Console 3.6.1 - March 6, 2017


  • This hotfix release addresses a race condition in the Engine that caused tests to intermittently fail.

Issues Resolved

  • 168 Intermittent errors while running tests after updating to 3.6

NUnit Console 3.6 - January 14, 2017

Console Runner

  • Added command line option --skipnontestassemblies to skip assemblies that do not contain tests without raising an error and to skip assemblies that contain the NUnit.Framework.NonTestAssemblyAttribute.
  • Messages from the new Multiple Assert blocks will be displayed individually
  • Warnings from the new Warn.If, Warn.Unless and Assert.Warn are now displayed


  • NUnit agents now monitor the running engine process and will terminate themselves if the parent runner process is killed or dies

Issues Resolved

  • 16 NUnit Engine Tests fail if not run from test directory
  • 18 Invalid file type is shown in XML as type="Assembly"
  • 23 In nunit3-console you cannot pass parameters containing ';' because they always get split
  • 37 NUnit 3 console should produce xml events for ITestEventListener which contain unique id in the scope of all test agents for NUnit 2 tests
  • 58 System.Configuration.ConfigurationErrorsException thrown in multiple domain mode.
  • 62 NUnit3 Fails on DLL with no Tests, Unlike NUnit2
  • 100 Class NUnit.Engine.Services.ResultWriters.Tests.SchemaValidator is never used
  • 101 Method NUnit.Options.OptionSet.Unprocessed always returns "false"
  • 104 Type of variable enumerated in 'foreach' is not guaranteed to be castable
  • 110 Writability check could give a friendlier message.
  • 113 Add task descriptions to Build.cake
  • 127 Modify console runner to display multiple assert information
  • 128 Terminate agent if main process has terminated
  • 133 NUnit downloadable packages zip file naming is confusing and non-intuitive
  • 136 Handle early termination of multiple assert block
  • 138 Report Warnings in console runner
  • 145 MasterTestRunner.RunAsync no longer provides start-run and test-run events
  • 151 Unexpected behaviour from --framework flag
  • 153 Remove some settings used by the engine
  • 156 Use high-quality icon for nuspecs
  • 157 Fix Detection of invalid framework when --inprocess
  • 159 Update extension versions in the NuSpec Files

Earlier Releases

Clone this wiki locally
You can’t perform that action at this time.