
October 22, 2010 - A new version of NUnit has been released. NUnit is a unit-testing framework for all .Net languages. Initially ported from JUnit, the current production release, version 2.5, is the sixth major release of this xUnit based unit testing tool for Microsoft .NET. It is written entirely in C# and has been completely redesigned to take advantage of many .NET language features, for example custom attributes and other reflection related capabilities. NUnit brings xUnit to all .NET languages.
NUnit 2.5.8 is the first release in the 2.5 series recommended for use on Linux under Mono. It also fixes about two dozen bugs.
General improvements
•The test file mock-assembly.dll has been enhanced to contain examples of all types of test suites for use in development of custom test reports.
Framework
•SubDirectoryConstraint has been removed and is replaced by SubPathConstraint, which operates on paths without the need to access the underlying directories.
•Custom attributes may now be derived from ExplicitAttribute.
•New key words "Windows7" and "Windows2008ServerR2" are recognized by the PlatformAttribute.
•A warning is now given if a test changes the current directory.
Console Runner
•A new /trace option may be used to set NUnit's internal trace level for a console run.
Gui Runner
•Stability problems with the NUnit Gui under Linux have been resolved and NUnit 2.5.8 is the recommended release for all platforms. Various cosmetic fixes have been made under Linux as well, so that the Gui functions in the same way as it does under Windows.
•A new setting dialog allows control of NUnit's InternalTrace facility, which was previously controlled by an entry in the config file.
•Tests run out of process may be debugged by attaching to the nunit-agent process once, since the same process is now used across multiple reloads of the test assembly.
Bug Fixes
•487999 RequiresThreadAttribute not working on Windows 7 64-bit
•491300 Self containing enumerables cause stack overflow when compared for equality
•524474 NUnit GUI issue: /exclude categories are saved each time
•602761 nunit-agent hangs after tests complete
•603088 NUnit Gui: Project Config Change from Menu Does Not Change AssemblyWatcher
•608897 Incorrect program name in Test Assemblies display under Mono
•612052 NUnit-agent should be reused on reload
•613031 Subclasses of ExplicitAttribute ignored
•615340 Give warning if CurrentDirectory is changed
•624603 Outdated copyright notice
•631620 UnauthorizedAccessException in DirectoryAssert
•631809 Misleading doc of CollectionAssert.AreEqual() and .AreEquivalent()
•633884 TestCaseSource does not use Arguments, Categories etc as described in documentation for 2.5.7
•641423 Timeout test fails under Mono on Linux
•644252 Memory leak in ParameterizedMethodSuite
•644643 NUnit uses fonts which may not be present on Linux
•644682 Tab text not properly aligned under linux
•644684 Tree display text is sometimes centered under linux
•645430 Status bar panels not sized correctly under Linux
•650598 Exception thrown when nunit-console run from networked drive on unit-tests built with .Net 4
•654788 TestContext is null when the test/fixture has a timeout attribute
•655674 New Fixture Object Suite requires pre-constructed objects to have a no-arg constructor
•657797 Remove InternalTrace settings from config file
•664081 Add Server2008 R2 and Windows 7 to PlatformAttribute
•665236 Support for Mono 4.0 profile not detected in Linux