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.
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
Override to select with selector, unless config.getTestCaseNamesCompat is True
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.
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.
Lazy-load tests from a generator function. The generator function may yield either:
- a callable, or
- a function name resolvable within the same module
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.
Load tests from all names, returning a suite containing all tests.
Load tests from a unittest.TestCase subclass.
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.
Given the yield value of a test generator, return a func and args.
This is used in the two loadTestsFromGenerator* methods.
Resolve name within module