rspec模拟与其他模拟框架的优缺点是什么?

时间:2010-07-21 08:05:12

标签: ruby rspec frameworks mocking rspec-mocks

我看过很多过时的播客,提到mocha作为我想要安装的宝石,因为它比rspec更好地模拟。我有一种感觉,rspec开发人员已经抓住了这一点,并从那时起改进了他们的模拟。但是,在默认的spec_helper.rb文件中,我看到了三个模拟框架的注释掉的代码存根

  • mocha
  • flexmock
  • rr

向所有能够在至少其中一个框架上与[{1}}自己的模拟框架相比,在优缺点方面给我一个体面答案的人提供支持。

我会接受一个答案,如果你可以给我一个分解,而不是rspec

2 个答案:

答案 0 :(得分:3)

真的,这只是一个品味问题。看看语法并使用模拟框架来查看最适合您的方法。当然,使用RSpec的内置模拟进行滚动是最快捷,最简单的。并且,正如您所提到的,RSpec的开发人员已经从其他框架中获取了线索......您会发现它们之间有很多相似之处。

此问题之前已被问过:请参阅the details there以了解一些差异(至少在RSpec :: Mock和Mocha之间)。

答案 1 :(得分:1)

我们使用内置的rspec模拟,直到最近我们切换到mocha。我的同事写了一篇关于陷阱的博客文章和一些关于推理的文章:
http://developer.newsdesk.se/2010/05/29/migrating-rspec-to-mocha/

基本上,我们想要mocha的any_instance方法,如果你无法访问想要模拟的实例,这个方法很有用。这不是一个巨大的优势,但足以让我们值得拥有。