Several module level functions are available for controlling how doctests are run.
Provide the module (or dotted name of the module) containing the docstring to be debugged and the name (within the module) of the object with the docstring to be debugged.
The doctest examples are extracted (see function testsource()), and written to a temporary file. The Python debugger, pdb, is then invoked on that file. New in version 2.3.
To get finer control than testmod() offers, create an instance
of Tester with custom policies, or run methods of
Tester.__doc__ for details.
Provide the module (or dotted name of the module) containing the tests to be extracted and the name (within the module) of the object with the docstring containing the tests to be extracted.
The doctest examples are returned as a string containing Python code. The expected output blocks in the examples are converted to Python comments. New in version 2.3.
The returned TestSuite is to be run by the unittest framework and runs each doctest in the module. If any of the doctests fail, then the synthesized unit test fails, and a DocTestTestFailure exception is raised showing the name of the file containing the test and a (sometimes approximate) line number.
The optional module argument provides the module to be tested. It can be a module object or a (possibly dotted) module name. If not specified, the module calling this function is used.
Example using one of the many ways that the unittest module can use a TestSuite:
import unittest import doctest import my_module_with_doctests suite = doctest.DocTestSuite(my_module_with_doctests) runner = unittest.TextTestRunner() runner.run(suite)
New in version 2.3.
This function does not currently search
and its search technique does not exactly match testmod() in
every detail. Future versions will bring the two into convergence.
See About this document... for information on suggesting changes.