2010-07-21 51 views
7

我見過很多過時的播客,提到摩卡作爲我想要安裝的寶石,因爲它確實嘲笑更好,然後rspec。我有一種感覺,那就是rspec開發者已經接觸到這一點,並從那以後改進了他們的嘲笑。然而,在默認spec_helper.rb文件我看到一些註釋掉的代碼存根三個嘲諷框架rspec mocking與其他嘲諷框架有什麼優缺點?

  • mocha
  • flexmock
  • rr

給予好評的人誰可以給我一個像樣的答案這些框架中至少有一個與rspec自己的嘲諷框架相關。

我會接受一個答案,如果你可以讓我休息一下倒在所有三個與rpsec

回答

3

真的,這只是一個品味的問題。看看語法,並使用模擬框架來查看最適合您的是什麼。當然,使用RSpec的內置嘲諷最快最容易。而且,正如你所提到的,RSpec的開發者已經從其他框架中得到了線索......你會發現他們之間有很多相似之處。

以前曾詢問過此問題:請參閱the details there以瞭解一些差異(至少在RSpec :: Mock和Mocha之間)。

1

我們使用內置rspec嘲諷,直到最近我們切換到摩卡。我的同事寫了一篇博客文章中的陷阱和一些有關的推理:
http://developer.newsdesk.se/2010/05/29/migrating-rspec-to-mocha/

基本上,我們希望摩卡的any_instance方法,如果你不能得到你想要嘲笑的實例,它是非常有用的。不是一個巨大的優勢,但足以讓它值得我們的時間。

+1

any_instance不再是rspec mocks和mocha之間的區別:https://www.relishapp.com/rspec/rspec-mocks/docs/method-stubs/stub-on-any-instance-of-a-class – justingordon 2013-05-02 06:12:15