NUnit Changelog

What's new in NUnit 2.9.6

Oct 11, 2013
  • Main Features:
  • Separate projects for nunit-console and nunit.engine
  • New builds for .NET 4.5 and Silverlight
  • TestContext is now supported and includes an additional property, Random, which may be used to generate repeatable random values for use in a test.
  • The external framework API is now stable; internal interfaces are separate from API
  • Tests may be run in parallel on separate threads
  • Solutions and projects now use VS2012 (except for Compact framework)
  • Bug Fixes:
  • 463470 We should encapsulate references to pre-2.0 collections
  • 498690 Assert.That() doesn't like properties with scoped setters
  • 501784 Theory tests do not work correctly when using null parameters
  • 531873 Feature: Extraction of unit tests from NUnit test assembly and calling appropriate one
  • 611325 Allow Teardown to detect if last test failed
  • 611938 Generic Test Instances disappear
  • 655882 Make CategoryAttribute inherited
  • 664081 Add Server2008 R2 and Windows 7 to PlatformAttribute
  • 671432 Upgrade NAnt to Latest Release
  • 676560 Assert.AreEqual does not support IEquatable
  • 691129 Add Category parameter to TestFixture
  • 697069 Feature request: dynamic location for TestResult.xml
  • 708173 NUnit's logic for comparing arrays - use Comparer if it is provided
  • 709062 "System.ArgumentException : Cannot compare" when the element is a list
  • 712156 Tests cannot use AppDomain.SetPrincipalPolicy
  • 719184 Platformdependency in src/ClientUtilities/util/Services/DomainManager.cs:40
  • 719187 Using Path.GetTempPath() causes conflicts in shared temporary folders
  • 735851 Add detection of 3.0, 3.5 and 4.0 frameworks to PlatformAttribute
  • 736062 Deadlock when EventListener performs a Trace call + EventPump synchronisation
  • 756843 Failing assertion does not show non-linear tolerance mode
  • 766749 net-2.0\nunit-console-x86.exe.config should have a element and also enable loadFromRemoteSources
  • 770471 Assert.IsEmpty does not support IEnumerable
  • 785460 Add Category parameter to TestCaseSourceAttribute
  • 787106 EqualConstraint provides inadequate failure information for IEnumerables
  • 792466 TestContext MethodName
  • 794115 HashSet incorrectly reported
  • 800089 Assert.Throws() hides details of inner AssertionException
  • 848713 Feature request: Add switch for console to break on any test case error
  • 878376 Add 'Exactly(n)' to the NUnit constraint syntax
  • 882137 When no tests are run, higher level suites display as Inconclusive
  • 882517 NUnit 2.5.10 doesn't recognize TestFixture if there are only TestCaseSource inside
  • 885173 Tests are still executed after cancellation by user
  • 885277 Exception when project calls for a runtime using only 2 digits
  • 885604 Feature request: Explicit named parameter to TestCaseAttribute
  • 890129 DelayedConstraint doesn't appear to poll properties of objects
  • 892844 Not using Mono 4.0 profile under Windows
  • 893919 DelayedConstraint fails polling properties on references which are initially null
  • 896973 Console output lines are run together under Linux
  • 897289 Is.Empty constraint has unclear failure message
  • 898192 Feature Request: Is.Negative, Is.Positive
  • 898256 IEnumerable for Datapoints doesn't work
  • 899178 Wrong failure message for parameterized tests that expect exceptions
  • 904841 After exiting for timeout the teardown method is not executed
  • 908829 TestCase attribute does not play well with variadic test functions
  • 910218 NUnit should add a trailing separator to the ApplicationBase
  • 920472 CollectionAssert.IsNotEmpty must dispose Enumerator
  • 922455 Add Support for Windows 8 and Windows 2012 Server to PlatformAttribute
  • 928246 Use assembly.Location instead of assembly.CodeBase
  • 958766 For development work under TeamCity, we need to support nunit2 formatted output under direct-runner
  • 1000181 Parameterized TestFixture with System.Type as constructor arguments fails
  • 1000213 Inconclusive message Not in report output
  • 1023084 Add Enum support to RandomAttribute
  • 1028188 Add Support for Silverlight
  • 1029785 Test loaded from remote folder failed to run with exception System.IODirectory
  • 1037144 Add MonoTouch support to PlatformAttribute
  • 1041365 Add MaxOsX and Xbox support to platform attribute
  • 1057981 C#5 async tests are not supported
  • 1060631 Add .NET 4.5 build
  • 1064014 Simple async tests should not return Task
  • 1071164 Support async methods in usage scenarios of Throws constraints
  • 1071343 Runner.Load fails on CF if the test assembly contains a generic method
  • 1071861 Error in Path Constraints
  • 1072379 Report test execution time at a higher resolution
  • 1074568 Assert/Assume should support an async method for the ActualValueDelegate
  • 1082330 Better Exception if SetCulture attribute is applied multiple times
  • 1111834 Expose Random Object as part of the test context
  • 1111838 Include Random Seed in Test Report
  • 1172979 Add Category Support to nunitlite Runner
  • 1203361 Randomizer uniqueness tests sometimes fail
  • 1221712 When non-existing test method is specified in -test, result is still "Tests run: 1, Passed: 1"
  • 1223294 System.NullReferenceException thrown when ExpectedExceptionAttribute is used in a static class
  • 1225542 Standardize commandline options for test harness

New in NUnit 2.6.3 (Oct 11, 2013)

  • Framework:
  • When running under .NET 4.5, async methods may now be used as the target of a ThrowsConstraint.
  • When running under .NET 4.5, async methods may now be used as an ActualValueDelegate passed to Assert.That() or Assume.That().
  • Bug Fixes:
  • 1071164 Support async methods in usage scenarios of Throws constraints
  • 1071714 TestContext is broken when a previous version of the runner is used alongside a new version of the framework
  • 1071861 Error in Path Constraints
  • 1072379 Report test execution time at a higher resolution
  • 1074568 Assert/Assume should support an async method for the ActualValueDelegate
  • 1079296 NUnit 2.6.2 Failure on Mono
  • 1082330 Better Exception if SetCulture attribute is applied multiple times
  • 1084181 TestExecutionContext SerializationException
  • 1086975 Security Exception After Upgrading to 2.6.2
  • 1096902 Trace output is disabled by default in version 2.6.2.12296
  • 1097854 Incorrect documentation for console runner /test option
  • 1107746 Add nunit tags to nuget packages
  • 1130239 classicModel.html is linked in local help, but doesn't exist
  • 1167638 Incorrectly detected recursion with types implementing IEnumerable and overriding Equals/operators/value types
  • 1167805 cross-domain problems with XmlSchema and call context
  • 1222148 /framework switch does not recognize net-4.5
  • 1235891 Proposed 2.6.3 release: ArgumentNullException in NUnit.Framework.AsyncInvocationRegion..cctor

New in NUnit 2.6.2 (Oct 23, 2012)

  • This release includes a number of bug fixes and support for async test methods under .NET 4.5.

New in NUnit 2.6.1 (Jul 11, 2012)

  • The 2.6.1 release fixes some outstanding bugs in NUnit 2.6.

New in NUnit 2.6 Beta 3 (Dec 7, 2011)

  • This fixes a few bugs found in the second beta release.

New in NUnit 2.6 Beta 2 (Nov 21, 2011)

  • The second beta release of NUnit 2.6 includes some bug fixes on the first beta as well as several improvements.

New in NUnit 2.6 Beta (Aug 29, 2011)

  • NUnit 2.6 includes several new features and a number of bug fixes.

New in NUnit 2.5.10 (Apr 4, 2011)

  • Framework:
  • TestCaseAttribute and TestFixtureAttribute now accept a named parameter 'Category' to specify the category of the individual test case or fixture instance.
  • Bug Fixes:
  • 691129 Add Category parameter to TestFixture
  • 701331 TestFixture attributes on base classes are not ignored
  • 711330 Test-free assembly given failure icon in tree display
  • 712444 nunit-console /run doesn't execute parameterized test-cases with commas in test-case name
  • 725718 Documented overloads of Has.Property do not exist
  • 728500 TestDomain should unload the test AppDomain
  • 736062 Deadlock when EventListener performs a Trace call + EventPump synchronisation
  • 737783 Distributed Results.xsd file is out of date
  • 741402 Error running .NET 1.1 console tests
  • 747581 Failure in TestFixtureTearDown not reported in console runner

New in NUnit 2.5.9 (Dec 15, 2010)

  • This is a bug fix release of the stable version of NUnit. Most users should install this release.

New in NUnit 2.5.8 (Oct 25, 2010)

  • This release fixes about two dozen bugs. It is also the first release in the 2.5 series that is recommended for use on Linux under Mono.

New in NUnit 2.5.7 (Aug 1, 2010)

  • This short release cycle was due to a bug found in the 2.5.6 code that caused certain TestFixtureAttributes on a generic fixture type to be
  • ignored. It also includes an experimental TestContext class that allows retrieving information about the test.

New in NUnit 2.9.5 (Jul 30, 2010)

  • This release has a number of bug fixes reflecting changes made in the NUnit 2.5.6 release so as to keep the new framework up to date.

New in NUnit 2.5.6 (Jul 25, 2010)

  • This release features an updated version of pNUnit and a number of bug fixes.

New in NUnit 2.9.4 (May 4, 2010)

  • This is an interim release to make the latest source code available to those experimenting with the new framework. There are a number of bug fixes and NUnit 4.0 build support is included. Restructuring of the framework is still ongoing, with some changes reflected in this release.

New in NUnit 2.5.5 (Apr 23, 2010)

  • This release should now work correctly with VS2010 and .Net 4.0 and has also been updated to correct problems testing 64-bit applications. There are a number of enhancements to Theories, which however remain experimental.

New in NUnit 2.5.4 (Apr 9, 2010)

  • The NUnit 2.5.4 release changes the way that test assemblies are loaded. Whereas past releases defaulted to loading assemblies under the same runtime used by NUnit, this release uses the runtime for which a test assembly was built as its default.

New in NUnit 2.5.3 (Dec 14, 2009)

  • It supports .NET 4.0 and fixes a number of bugs from the prior release.

New in NUnit 2.9.3 (Oct 26, 2009)

  • This release integrates test loading and running into the framework assembly and adds .NET 3.5 and 4.0 builds.

New in NUnit 2.9.2 (Sep 19, 2009)

  • This release merges the nunit and nunitlite code bases and provides compact framework builds.
  • The binary zip file includes builds of the full NUnit framework for net-1.1 and net-2.0 and of NUnitLite for net-1.1, net-2.0, netcf-1.1 and netcf-2.0. NUnitLite is not included in the windows installer.
  • The NUnitLite test files are self-testing exes.

New in NUnit 2.9.1 (Aug 27, 2009)

  • The NUnit 2.9.1 Framework is a usable functional equivalent to the 2.5.2 version of the framework delivered as part of the stable release. Tests linked with the 2.91 framework may be executed under NUnit 2.5.2.
  • While there are no added features, this is a major milestone because it marks our successful transition to Lauchpad and the separation of the framework from the rest of NUnit as an independent project.
  • The NUnit Framework license has changed to MIT / X11 as of this release.

New in NUnit 2.5 (May 3, 2009)

  • Parameterized (data-driven) tests are supported, with features similar to those found in mbUnit and xUnit.net.
  • Theories - as used in JUnit- are supported fully, including support for Assume.That.
  • New attributes allow the specifying the thread and apartment state requirements of a test.
  • Exception handling can now be moved into the test code using Assert.Throws or the Throws.Exception syntax.
  • Test methods and fixtures may now be generic and many asserts and constraint expressions now support generic syntax.
  • Many constraints now permit substitution of a user-defined comparison algorithm through the Using modifier. Lambda expressions are supported.
  • Test execution may now take place in a separate process for better isolation.
  • Tests may be loaded and executed using a selected runtime version.
  • Tests, setup methods, teardown methods and data sources may be static if desired. If there are no instance methods, then NUnit doesn't need to construct your test class.
  • Source code is displayed in the gui, where available.