Excluding directory, module in python nosetest

后端 未结 3 1160
走了就别回头了
走了就别回头了 2021-01-17 08:10

We use nose to discover tests and run them. All the tests are written in TestCase compatible way so any test runner can run the. Problem is we have some directo

相关标签:
3条回答
  • 2021-01-17 08:48

    There is a nose-exclude plugin specifically for the task:

    nose-exclude is a Nose plugin that allows you to easily specify directories to be excluded from testing.

    Among other features, it introduces a new command-line argument called exclude-dir:

    nosetests --processes=10 --verbosity 2 --exclude-dir=/path/to/scripts
    

    Instead of passing a command-line argument, you can also set NOSE_EXCLUDE_DIRS environment variable, or set exclude-dir configuration key in .noserc or nose.cfg files.

    0 讨论(0)
  • 2021-01-17 08:52

    You can also use the --ignore-files argument to exclude specific files. Since this is using regular expressions, you can name your files inside your scripts/ folder to begin with a specific prefix that you can then use to match in a regex.

    # Exclude just one test file
    nosetests your_package --ignore-files="tests_to_exclude\.py" -v
    # Exclude all python scripts beginning with `testskip_`
    nosetests your_package --ignore-files="testskip_.+\.py" -v
    

    See: Nose documentation.

    0 讨论(0)
  • 2021-01-17 09:06

    Perhaps not what the OP asked for, but I found this tidbit from the nose docs useful to exclude a file from consideration:

    If an object defines a __test__ attribute that does not evaluate to True, that object will not be collected, nor will any objects it contains.

    0 讨论(0)
提交回复
热议问题