Thư viện chế nhạo Python yêu thích của bạn là gì? [đóng cửa]


91

Thư viện chế nhạo yêu thích duy nhất của bạn cho Python là gì?


minimock trong đó sử dụng doctest
GS Falken

1
"Mockito là một khuôn khổ chế nhạo rất ngon. Nó cho phép bạn viết các bài kiểm tra đẹp mắt với API sạch sẽ và đơn giản. Mockito không khiến bạn cảm thấy nôn nao vì các bài kiểm tra rất dễ đọc và chúng tạo ra các lỗi xác minh rõ ràng." code.google.com/p/mockito
mit

Câu trả lời:


43

Tôi chỉ mới sử dụng một cái, nhưng tôi đã có kết quả tốt với Michael Foord's Mock: http://www.voidspace.org.uk/python/mock/ .

Lời giới thiệu của Michael nói tốt hơn tôi có thể:

Đã có một số thư viện giả lập Python, vậy tại sao lại có một thư viện khác?

Hầu hết các thư viện chế nhạo đều tuân theo mô hình chế nhạo 'ghi lại -> phát lại'. Tôi thích mẫu 'hành động -> xác nhận', dễ đọc và trực quan hơn, đặc biệt khi làm việc với mô-đun đơn nhất Python.

...

Nó cũng cung cấp các chức năng / đối tượng tiện ích để hỗ trợ kiểm tra, đặc biệt là vá lỗi khỉ.


8
mock hiện là một phần của thư viện chuẩn Python, có sẵn dưới dạng unittest.mock trong Python 3.3 trở đi.
n611x007

KHÔNG sử dụng mô hình được backported với Python 2.x! Nó được cập nhật lần cuối vào năm 2012, có nhiều lỗi (xem các vấn đề trên mã google!). Tránh ra.
Andriy Drozdyuk


5

Chế nhạo từ Gustavo Niemeyer.

Nó không hoàn hảo, nhưng nó rất mạnh mẽ và linh hoạt.


3
Mocker được đề cập rộng rãi trong "Thử nghiệm Python: Hướng dẫn cho Người mới bắt đầu" (Packt) của Daniel Arbuckle.
Graham King




0

Tôi đã sử dụng pMock trong quá khứ và không bận tâm về nó, nó cũng có tài liệu khá phong phú. Tuy nhiên, Foord's Mock như đã nói ở trên cũng rất hay.


8
Đó là những gì tác giả của pMock nói về pMokc: " Chỉ cần lưu ý rằng pMock không còn được phát triển nữa (thực sự phải cập nhật trang web), thực ra nó là một thử nghiệm mà tôi đã chơi xong khoảng bốn năm trước và giả định là" alpha " sẽ khiến mọi người sợ hãi. "[ brunningonline.net/simon/blog/archives/002262.html]
ssoler
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.