Test Selection¶
Test selection is handled by a Selector. The test loader calls the appropriate selector method for each object it encounters that it thinks may be a test.
- class nose.selector.Selector(config)¶
Core test selector. Examines test candidates and determines whether, given the specified configuration, the test candidate should be selected as a test.
- matches(name)¶
Does the name match my requirements?
To match, a name must match config.testMatch OR config.include and it must not match config.exclude
- wantClass(cls)¶
Is the class a wanted test class?
A class must be a unittest.TestCase subclass, or match test name requirements. Classes that start with _ are always excluded.
- wantDirectory(dirname)¶
Is the directory a wanted test directory?
All package directories match, so long as they do not match exclude. All other directories must match test requirements.
- wantFile(file)¶
Is the file a wanted test file?
The file must be a python source file and match testMatch or include, and not match exclude. Files that match ignore are never wanted, regardless of plugin, testMatch, include or exclude settings.
- wantFunction(function)¶
Is the function a test function?
- wantMethod(method)¶
Is the method a test method?
- wantModule(module)¶
Is the module a test module?
The tail of the module name must match test requirements. One exception: we always want __main__.
- class nose.selector.TestAddress(name, workingDir=None)¶
A test address represents a user’s request to run a particular test. The user may specify a filename or module (or neither), and/or a callable (a class, function, or method). The naming format for test addresses is:
filename_or_module:callable
Filenames that are not absolute will be made absolute relative to the working dir.
The filename or module part will be considered a module name if it doesn’t look like a file, that is, if it doesn’t exist on the file system and it doesn’t contain any directory separators and it doesn’t end in .py.
Callables may be a class name, function name, method name, or class.method specification.