Test Loader

nose’s test loader implements the same basic functionality as its superclass, unittest.TestLoader, but extends it by more liberal interpretations of what may be a test and how a test may be named.

class nose.loader.TestLoader(config=None, importer=None, workingDir=None, selector=None)

Test loader that extends unittest.TestLoader to:

  • Load tests from test-like functions and classes that are not unittest.TestCase subclasses

  • Find and load test modules in a directory

  • Support tests that are generators

  • Support easy extensions of or changes to that behavior through plugins

getTestCaseNames(testCaseClass)

Override to select with selector, unless config.getTestCaseNamesCompat is True

loadTestsFromDir(path)

Load tests from the directory at path. This is a generator – each suite of tests from a module or other file is yielded and is expected to be executed before the next file is examined.

loadTestsFromFile(filename)

Load tests from a non-module file. Default is to raise a ValueError; plugins may implement loadTestsFromFile to provide a list of tests loaded from the file.

loadTestsFromGenerator(generator, module)

Lazy-load tests from a generator function. The generator function may yield either:

  • a callable, or

  • a function name resolvable within the same module

loadTestsFromGeneratorMethod(generator, cls)

Lazy-load tests from a generator method.

This is more complicated than loading from a generator function, since a generator method may yield:

  • a function

  • a bound or unbound method, or

  • a method name

loadTestsFromModule(module, path=None, discovered=False)

Load all tests from module and return a suite containing them. If the module has been discovered and is not test-like, the suite will be empty by default, though plugins may add their own tests.

loadTestsFromName(name, module=None, discovered=False)

Load tests from the entity with the given name.

The name may indicate a file, directory, module, or any object within a module. See nose.util.split_test_name for details on test name parsing.

loadTestsFromNames(names, module=None)

Load tests from all names, returning a suite containing all tests.

loadTestsFromTestCase(testCaseClass)

Load tests from a unittest.TestCase subclass.

loadTestsFromTestClass(cls)

Load tests from a test class that is not a unittest.TestCase subclass.

In this case, we can’t depend on the class’s __init__ taking method name arguments, so we have to compose a MethodTestCase for each method in the class that looks testlike.

parseGeneratedTest(test)

Given the yield value of a test generator, return a func and args.

This is used in the two loadTestsFromGenerator* methods.

resolve(name, module)

Resolve name within module

nose.loader.defaultTestLoader

alias of nose.loader.TestLoader