Яка ваша улюблена бібліотека для знущань над Python? [зачинено]


91

Яка ваша улюблена бібліотека для насмішок для Python?


minimock, який використовує доктест
професор Фалькен

1
"Mockito - це насмішливий фреймворк, який справді смакує. Він дозволяє писати красиві тести з чистим і простим API. Mockito не дає вам похмілля, оскільки тести дуже читаються, і вони видають чисті помилки перевірки". code.google.com/p/mockito
з

Відповіді:


43

Я використав лише один, але у мене були хороші результати з Mock Майкла Фоорда: http://www.voidspace.org.uk/python/mock/ .

Вступ Майкла говорить це краще, ніж я міг:

Доступно вже кілька бібліотек для глузувань на Python, то навіщо ще одна?

Більшість бібліотек, що насміхаються, дотримуються шаблону насмішок "запис -> повтор". Я віддаю перевагу шаблону 'action -> assertion', який є більш читабельним та інтуїтивно зрозумілим, особливо під час роботи з модулем Python unittest.

...

Він також надає утилітні функції / об'єкти для допомоги у тестуванні, зокрема виправлення мавп.


8
mock тепер є частиною стандартної бібліотеки Python, доступної як unittest.mock в Python 3.3 і далі.
n611x007

НЕ використовуйте бекпорт-макет з Python 2.x! Востаннє оновлене у 2012 році, пронизане помилками (див. Проблеми в коді Google!). Тримайся подалі.
Андрій Дроздюк


5

Глузник від Густаво Німейєра.

Це не ідеально, але дуже потужно та гнучко.


3
Мокер широко висвітлений у "Тестуванні Python: Посібник для початківців" Даніеля Арбукла (Packt).
Грем Кінг




0

Раніше я використовував pMock , і це не заперечувало, у нього теж були досить пристойні документи. Однак знущання Фоорда, як згадано вище, теж приємне.


8
Ось що автор pMock говорить про pMokc: " Тільки зауважимо, що pMock більше не розробляється (насправді потрібно оновити веб-сторінку), насправді це був більше експеримент, з яким я закінчив гру близько чотирьох років тому і прийняв позначення" альфа " відлякував би людей ". [ brunningonline.net/simon/blog/archives/002262.html]
ssoler
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.