Mockito is a spying framework originally based on the Java library with the same name.
pip install mockito
90% use case is that you want to stub out a side effect.
from mockito import when, mock, unstub when(os.path).exists('/foo').thenReturn(True) # or: import requests # the famous library # you actually want to return a Response-like obj, we'll fake it response = mock({'status_code': 200, 'text': 'Ok'}) when(requests).get(...).thenReturn(response) # use it requests.get('http://google.com/') # clean up unstub()
http://mockito-python.readthedocs.io/en/latest/
pip install pytest py.test