Qual é sua biblioteca de mocking favorita do Python? [fechadas]


91

Qual é a sua biblioteca de mocking favorita para Python?


minimock que usa doctest
Prof. Falken

1
"Mockito é um framework de simulação que tem um gosto muito bom. Ele permite que você escreva belos testes com uma API limpa e simples. O Mockito não dá ressaca porque os testes são muito legíveis e produzem erros de verificação limpos." code.google.com/p/mockito
mit

Respostas:


43

Usei apenas um, mas tive bons resultados com o Mock de Michael Foord: http://www.voidspace.org.uk/python/mock/ .

A introdução de Michael diz isso melhor do que eu:

Já existem várias bibliotecas de mocking Python disponíveis, então por que outra?

A maioria das bibliotecas de mocking segue o padrão 'record -> replay' de mocking. Eu prefiro o padrão 'ação -> asserção', que é mais legível e intuitivo, especialmente ao trabalhar com o módulo de teste de unidade Python.

...

Ele também fornece funções / objetos utilitários para auxiliar nos testes, particularmente na correção de macacos.


8
mock agora faz parte da biblioteca padrão do Python, disponível como unittest.mock no Python 3.3 em diante.
n611x007

NÃO use simulação com backport com Python 2.x! Foi atualizado pela última vez em 2012, cheio de bugs (veja os problemas no código do Google!). Ficar longe.
Andriy Drozdyuk


5

Zombador de Gustavo Niemeyer.

Não é perfeito, mas é muito poderoso e flexível.


3
Mocker é amplamente abordado no "Python Testing: Beginner's Guide" (Packt) de Daniel Arbuckle.
Graham King




0

Eu usei o pMock no passado, e não me importei, ele também tinha documentos decentes. No entanto, Foord's Mock como mencionado acima também é bom.


8
Isso é o que o autor do pMock diz sobre o pMokc: " Apenas para notar que o pMock não está mais em desenvolvimento (realmente deve atualizar a página da web), na verdade foi mais um experimento que terminei de brincar há cerca de quatro anos e assumi a designação" alfa " assustaria as pessoas. "[ brunningonline.net/simon/blog/archives/002262.html]
ssoler
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.