unittest — Unit testing framework — Python 3.10.7 documentation

To achieve this, unittest supports some important concepts in an object-oriented way:

  • test fixture

  • test fixture represents the preparation needed to perform one or more tests, and any associated cleanup actions. This may involve, for example, creating temporary or proxy databases, directories, or starting a server process.

  • test case

  • test case is the individual unit of testing. It checks for a specific response to a particular set of inputs. unittest provides a base class, TestCase, which may be used to create new test cases.

  • test suite

  • test suite is a collection of test cases, test suites, or both. It is used to aggregate tests that should be executed together.

  • test runner

  • test runner is a component which orchestrates the execution of tests and provides the outcome to the user. The runner may use a graphical interface, a textual interface, or return a special value to indicate the results of executing the tests.


unittest.mock — mock object library — Python 3.10.7 documentation