Найти - Пользователи
Полная версия: Как готовить mock
Начало » Python для новичков » Как готовить mock
1 2
Андрей Светлов

mock уже в stdlib. Под именем unittest.mock

reclosedev
Ed
Мне он кажется более понятным, простым и управляемым. И писать так было намного легче. Если что-то ломалось, то в трэйсбэке было видно где, в отличие от моих попыток сделать это с использованием mock. В чем тогда смысл его использования?
В этом примере, функционал почти полностью заменяется своим, потому и получается, что свои классы удобнее написать. Минус в том, что если в следующем тесте вы захотите использовать реальный модуль или какую то функцию из него, нужно будет в ручную убирать патч, с mock и контекст менеджером это делается автоматически.

Вот более удачный пример использования mock:
http://blueprintforge.com/blog/2012/01/08/python-injecting-mock-objects-for-powerful-testing
https://github.com/MattCottingham/pyclientauth/blob/master/tests.py

И еще, иногда нужно проверить сколько раз был вызван метод/функция, с какими аргументами, изменить в объекте только один метод, тогда mock и выглядит более удобным чем ручное написание.



Ed
Спасибо за ссылки, посмотрю. Может это добавит понимания. Пока все очень туго идет. По-прежнему не могу осознать как с этим работать.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB