nosetests

NOSETESTS(1)			 User Commands			  NOSETESTS(1)



NAME
       nosetests - unit testing for Python software

SYNOPSIS
       nosetests [options] [names]

DESCRIPTION
       nose   provides	extended  test	discovery  and	running	 features  for
       unittest.

       nose collects tests automatically from python source files, directories
       and packages found in its working directory (which defaults to the cur-
       rent working directory). Any python source file, directory  or  package
       that   matches	the   testMatch	  regular   expression	 (by  default:
       (?:^|[\b_\.-])[Tt]est) will be collected as a test (or source for  col-
       lection of tests). In addition, all other packages found in the working
       directory will be examined for python source files or directories  that
       match  testMatch. Package discovery descends all the way down the tree,
       so package.tests and package.sub.tests and package.sub.sub2.tests  will
       all be collected.

       Within  a  test	directory  or package, any python source file matching
       testMatch will be examined for test cases. Within a test module,	 func-
       tions  and  classes whose names match testMatch and TestCase subclasses
       with any name will be loaded and executed as tests. Tests may  use  the
       assert keyword or raise AssertionErrors to indicate test failure. Test-
       Case subclasses may do the same or use  the  various  TestCase  methods
       available.

       Selecting Tests

       To specify which tests to run, pass test names on the command line:

       nosetests only_test_this.py

       Test  names  specified  may be file or module names, and may optionally
       indicate the test case to run by separating the	module	or  file  name
       from  the  test	case  name  with a colon. Filenames may be relative or
       absolute. Examples:

	 nosetests test.module
	 nosetests another.test:TestCase.test_method
	 nosetests a.test:TestCase
	 nosetests /path/to/test/file.py:test_function

       You may also change the working directory where nose looks  for	tests,
       use the -w switch:

       nosetests -w /path/to/tests


       Note  however  that  support for multiple -w arguments is deprecated in
       this version and will be removed in a future release, since as of  nose
       0.10 you can get the same behavior by specifying the target directories
       *without* the -w switch:

       nosetests /path/to/tests /another/path/to/tests

       Further customization of test selection and loading is possible through
       the use of plugins.

       Test  result  output  is	 identical to that of unittest, except for the
       additional features (error classes, and plugin-supplied	features  such
       as  output  capture  and	 assert introspection) detailed in the options
       below.

       Configuration

       In addition to passing command-line options, you may also put  configu-
       ration  options	in  a .noserc or nose.cfg file in your home directory.
       These are standard .ini-style config files. Put your nosetests configu-
       ration in a [nosetests] section, with the -- prefix removed:

	 [nosetests]
	 verbosity=3
	 with-doctest=1

       All configuration files that are found will be loaded and their options
       combined.

   options:
       -h, --help
	      show this help message and exit

       -V, --version
	      Output nose version and exit

       -p, --plugins
	      Output list of available plugins and exit. Combine  with	higher
	      verbosity for greater detail

       -v, --verbose
	      Be more verbose. [NOSE_VERBOSE]

       --verbosity=VERBOSITY
	      Set verbosity; --verbosity=2 is the same as -v

       -q, --quiet

       -c FILES, --config=FILES
	      Load  configuration from config file(s). May be specified multi-
	      ple times; in that case, all config files	 will  be  loaded  and
	      combined

       -w WHERE, --where=WHERE
	      Look  for	 tests	in  this  directory. May be specified multiple
	      times. The first directory passed will be used  as  the  working
	      directory,  in  place of the current working directory, which is
	      the default. Others will be added to the list of tests  to  exe-
	      cute. [NOSE_WHERE]

       -m TESTMATCH, --match=TESTMATCH, --testmatch=TESTMATCH
	      Use this regular expression to find tests [NOSE_TESTMATCH]

       --tests=TESTNAMES
	      Run  these tests (comma-separated list). This argument is useful
	      mainly from configuration files; on the command line, just  pass
	      the tests to run as additional arguments with no switch.

       -l DEBUG, --debug=DEBUG
	      Activate debug logging for one or more systems.  Available debug
	      loggers:	nose,  nose.importer,  nose.inspector,	 nose.plugins,
	      nose.result  and	nose.selector.	Separate multiple names with a
	      comma.

       --debug-log=DEBUGLOG
	      Log debug messages to this file (default: sys.stderr)

       --logging-config=LOGGINGCONFIG, --log-config=LOGGINGCONFIG
	      Load logging config from this file -- bypasses all other logging
	      config settings.

       -e EXCLUDE, --exclude=EXCLUDE
	      Don’t run tests that match regular expression [NOSE_EXCLUDE]

       -i INCLUDE, --include=INCLUDE
	      Also run tests that match regular expression [NOSE_INCLUDE]

       -x, --stop
	      Stop running tests after the first error or failure

       -P, --no-path-adjustment
	      Don’t   make   any   changes  to	sys.path  when	loading	 tests
	      [NOSE_NOPATH]

       --exe  Look for tests in python modules that  are  executable.	Normal
	      behavior is to exclude executable modules, since they may not be
	      import-safe [NOSE_INCLUDE_EXE]

       --noexe
	      DO NOT look for tests in python  modules	that  are  executable.
	      (The default on the windows platform is to do so.)

       --with-html-output
	      Enable  plugin HtmlOutput: Output test results as ugly, unstyled
	      html.	 [NOSE_WITH_HTML-OUTPUT]

       --with-watch
	      Enable plugin NoseWatch: watch  failing  tests,  retesting  when
	      modified	    [NOSE_WITH_WATCH]

       --with-stopwatch
	      Enable  plugin  Stopwatch:  (no help available) [NOSE_WITH_STOP-
	      WATCH]

       --faster-than=FASTER_THAN
	      Run only tests that are faster than FASTER_THAN seconds.

       --stopwatch-file=STOPWATCH_FILE
	      Store test timing results in this file.

       --with-figleafsections
	      Enable   plugin	 FigleafSections:    (no    help    available)
	      [NOSE_WITH_FIGLEAFSECTIONS]

       --figleaf-file=FIGLEAF_FILE
	      Store figleaf section coverage in this file

       --decorator-file=DECORATOR_FILE
	      Apply  attributes	 in  this file to matching functions, classes,
	      and methods

       --with-tty
	      Enable  plugin  NoseTTY:	run   nosetests	  more	 interactively
	      [NOSE_WITH_TTY]

       --tty  Enable   plugin	NoseTTY:   run	nosetests  more	 interactively
	      [NOSE_TTY]

       --tty-editor=NOSE_TTY_EDITOR
	      editor program [NOSE_TTY_EDITOR or EDITOR] (currently: ‘None‘)

       --tty-edit-cmd=NOSE_TTY_EDIT_CMD
	      template to  invoke  edit	 command.   [NOSE_TTY_EDIT_CMD]	 (cur-
	      rently: ‘%(editor)s %(filename)s --line %(lineno)s‘)

       -a ATTR, --attr=ATTR
	      Run   only   tests   that	 have  attributes  specified  by  ATTR
	      [NOSE_ATTR]

       -A EXPR, --eval-attr=EXPR
	      Run only tests for whose attributes the Python  expression  EXPR
	      evaluates to True [NOSE_EVAL_ATTR]

       -s, --nocapture
	      Don’t  capture stdout (any stdout output will be printed immedi-
	      ately) [NOSE_NOCAPTURE]

       --with-coverage
	      Enable plugin Coverage:  If you have Ned	Batchelder’s  coverage
	      module installed, you may activate a coverage report. The cover-
	      age report will cover any python source  module  imported	 after
	      the  start  of  the test run, excluding modules that match test-
	      Match. If you  want  to  include	those  modules	too,  use  the
	      --covertests  switch,  or	 set  the NOSE_COVER_TESTS environment
	      variable to a true value. To restrict  the  coverage  report  to
	      modules	from   a  particular  package  or  packages,  use  the
	      --cover-packages switch or the  NOSE_COVER_PACKAGES  environment
	      variable.	 [NOSE_WITH_COVERAGE]

       --cover-package=COVER_PACKAGES
	      Restrict	coverage output to selected packages [NOSE_COVER_PACK-
	      AGE]

       --cover-erase
	      Erase previously collected coverage statistics before run

       --cover-tests
	      Include test modules in coverage report [NOSE_COVER_TESTS]

       --cover-inclusive
	      Include all python files under  working  directory  in  coverage
	      report.	Useful	for  discovering holes in test coverage if not
	      all files are imported by the test suite. [NOSE_COVER_INCLUSIVE]

       --pdb  Drop into debugger on errors

       --pdb-failures
	      Drop into debugger on failures

       --no-deprecated
	      Disable special handling of DeprecatedTest exceptions.

       --with-doctest
	      Enable  plugin Doctest:  Activate doctest plugin to find and run
	      doctests in non-test modules.  [NOSE_WITH_DOCTEST]

       --doctest-tests
	      Also look for doctests in test modules [NOSE_DOCTEST_TESTS]

       --doctest-extension=DOCTESTEXTENSION
	      Also  look  for  doctests	  in   files   with   this   extension
	      [NOSE_DOCTEST_EXTENSION]

       --with-isolation
	      Enable plugin IsolationPlugin:  Activate the isolation plugin to
	      isolate changes to external modules to a single test  module  or
	      package. The isolation plugin resets the contents of sys.modules
	      after each test module or package runs to its state  before  the
	      test.   PLEASE NOTE that this plugin should not be used with the
	      coverage plugin in any other case	 where	module	reloading  may
	      produce undesirable side-effects.	 [NOSE_WITH_ISOLATION]

       -d, --detailed-errors, --failure-detail
	      Add  detail  to  error  output  by attempting to evaluate failed
	      asserts [NOSE_DETAILED_ERRORS]

       --with-profile
	      Enable plugin Profile:  Use this plugin to run tests  using  the
	      hotshot profiler.	  [NOSE_WITH_PROFILE]

       --profile-sort=PROFILE_SORT
	      Set sort order for profiler output

       --profile-stats-file=PROFILE_STATS_FILE
	      Profiler stats file; default is a new temp file on each run

       --profile-restrict=PROFILE_RESTRICT
	      Restrict profiler output. See help for pstats.Stats for details

       --no-skip
	      Disable special handling of SkipTest exceptions.

       --with-id
	      Enable  plugin  TestId:	Activate to add a test id (like #1) to
	      each test name output. After you’ve run once  to	generate  test
	      ids,  you	 can  re-run individual tests by activating the plugin
	      and passing the ids (with or without the #  prefix)  instead  of
	      test names.  [NOSE_WITH_ID]

       --id-file=TESTIDFILE
	      Store test ids found in test runs in this file.

AUTHOR
       nose  is	 written  by Jason Pellerin. This manpage was adapted from the
       output of the help2man(1) program by Jason Pellerin, following the ver-
       sion made by Gustavo Noronha Silva for the Debian GNU/Linux system, but
       may be used by others.

COPYRIGHT
       Copyright (C) 2005-2007 Jason Pellerin

       This is free software.  You may redistribute copies  of	it  under  the
       terms	 of	the	GNU	Lesser	  General    Public    License
       <http://www.gnu.org/licenses/lgpl.html>.	 There is NO WARRANTY, to  the
       extent permitted by law.

SEE ALSO
       The	project	    website	is     at     http://somethingaboutor-
       ange.com/mrl/projects/nose/



nosetests version 0.10.0a1	   July 2007			  NOSETESTS(1)

Personal Tools