- Add support for plugins, with hooks for selecting, loading and reporting on
tests. Doctest and coverage are now plugins.
- Add builtin plugins for profiling with hotshot, selecting tests by
attribute (contributed by Mika Eloranta), and warning of missed tests
specified on command line.
- Change command line test selection syntax to match unittest. Thanks to Titus
Brown for the suggestion.
- Option to drop into pdb on error or failure.
- Option to stop running on first error or failure. Thanks to Kevin Dangoor
for the suggestion.
- Support for doctests in files other than python modules (python 2.4 only)
- Reimplement base test selection as single self-contained class.
- Reimplement test loading as unittest-compatible TestLoader class.
- Remove all monkeypatching.
- Reimplement output capture and assert introspection support in
unittest-compatible Result class.
- Better support for multiline constructions in assert introspection.
- More context output with assert introspections.
- Refactor setuptools test command support to use proxied result, which
enables output capture and assert introspection support without
monkeypatching. Thanks to Philip J. Eby for the suggestion and skeleton
implementation.
- Add support for generators in test classes. Thanks to Jay Parlar for the
suggestion and patch.
- Add nose.tools package with some helpful test-composition functions and
decorators, including raises, contributed by Scot Doyle.
- Reimplement nose.main (TestProgram) to have unittest-compatible signature.
- All-new import path handling. You can even turn it off! (If you don't,
nose will ensure that all directories from which it imports anything are on
sys.path before the import.)
- Logging package used for verbose logging.
- Support for skipped and deprecated tests.
- Configuration is no longer global.