pytest-mock : Mocking in pytest

Test & Code

pytest-mock is currently the #3 pytest plugin. 
pytest-mock is a wrapper around unittest.mock.

In this episode:

  • Why the pytest-mock plugin is awesome
  • What is mocking, patching, and monkey patching
  • What, if any, is the difference between mock, fake, spy, stub. 
  • Why we might need these in testing
  • Some history of mock in Python and how mock became unittest.mock
  • From unittest.mock
    • patch.object
    • patch.object with autospec
    • using these as context managers
  • pytest-mock:
    • The mocker fixture 
    • Cleanup in teardown
    • Using mocker.patch, mocker.spy, and mocker.stub
    • Why it's awesome and why you might want to use it over straight unittest.mock

Links:

  • top pytest plugins list
  • pytest-mock documentation
  • unittest.mock
  • Podcast episode discussing unittest.mock with Michael Foord
  • monkeypatch

Help support the show AND learn pytest: 

  • The Complete pytest course is now a bundle, with each part available separately.
    • pytest Primary Power teaches the super powers of pytest that you need to learn to use pytest effectively.
    • Using pytest with Projects has lots of "when you need it" sections like debugging failed tests, mocking, testing strategy, and CI
    • Then pytest Booster Rockets can help with advanced parametrization and building plugins.
  • Whether you need to get started with pytest today, or want to power up your pytest skills, PythonTest has a course for you.
★ Support this podcast on Patreon ★

To listen to explicit episodes, sign in.

Stay up to date with this show

Sign in or sign up to follow shows, save episodes, and get the latest updates.

Select a country or region

Africa, Middle East, and India

Asia Pacific

Europe

Latin America and the Caribbean

The United States and Canada