Toptal

More often than not, the software we write directly interacts with what we would label as “dirty” services. In layman’s terms: services that are crucial to our application, but whose interactions have intended but undesired side-effects—that is, undesired in the context of an autonomous test run.

For example: perhaps we’re writing a social app and want to test out our new ‘Post to Facebook feature’, but don’t want to _actually_ post to Facebook every time we run our test suite.

The Python `unittest` library includes a subpackage named `unittest.mock`—or if you declare it as a dependency, simply `mock`—which provides extremely powerful and useful means by which to mock and stub out these undesired side-effects.

Source: Toptal