Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 什么';使用tdd/bdd在rails中测试mongoid模型的最佳方法是什么?_Ruby On Rails_Mongodb_Tdd_Mongoid_Bdd - Fatal编程技术网

Ruby on rails 什么';使用tdd/bdd在rails中测试mongoid模型的最佳方法是什么?

Ruby on rails 什么';使用tdd/bdd在rails中测试mongoid模型的最佳方法是什么?,ruby-on-rails,mongodb,tdd,mongoid,bdd,Ruby On Rails,Mongodb,Tdd,Mongoid,Bdd,到目前为止,为了测试rails/mongoid DB模型,我曾经有一个数据很少的真实模型(3..5),试图真实地覆盖每一种情况 我已经用cucumber在BDD外部进行了测试,但我通常会提前停止,很少使用rspec,也没有夹具和模型,通过rails.logger.inforails logger预听真实案例并打印字段值 但是现在我受够了,当模型变得更复杂的时候,它太让人受不了了 使用tdd/bdd在rails中测试mongoid模型的最佳方法是什么? 我从哪里开始 我以前没有使用过Mongoid

到目前为止,为了测试rails/mongoid DB模型,我曾经有一个数据很少的真实模型(3..5),试图真实地覆盖每一种情况

我已经用cucumber在BDD外部进行了测试,但我通常会提前停止,很少使用rspec,也没有夹具和模型,通过
rails.logger.info
rails logger预听真实案例并打印字段值

但是现在我受够了,当模型变得更复杂的时候,它太让人受不了了

使用tdd/bdd在rails中测试mongoid模型的最佳方法是什么?
我从哪里开始

我以前没有使用过Mongoid,但是为什么测试这些模型会与使用ActiveRecord的不同呢?我个人依赖RSpec进行单元测试,单元测试应该只测试模型的外部API(行为),而不应该太依赖fixture或测试内部数据或私有方法。在很多情况下,您也可以使用mock和stub来避免DB持久性


<>如果你的模型变得过于复杂,你可能需要考虑采取更多的OOP方法,并将一些逻辑提取到不依赖于蒙古文的其他类。在这种情况下,您有很多选择,如果您有兴趣了解更多信息,我强烈建议您。

我以前没有使用过Mongoid,但是有什么原因可以说明测试这些模型与使用ActiveRecord的模型有什么不同?我个人依赖RSpec进行单元测试,单元测试应该只测试模型的外部API(行为),而不应该太依赖fixture或测试内部数据或私有方法。在很多情况下,您也可以使用mock和stub来避免DB持久性


<>如果你的模型变得过于复杂,你可能需要考虑采取更多的OOP方法,并将一些逻辑提取到不依赖于蒙古文的其他类。在这种情况下,您有很多选择,如果您有兴趣了解更多信息,我强烈建议您。

WTF StackOverflow通过他们的亚马逊推荐劫持了我的链接,恕不另行通知:-|是的,坏家伙…,不管怎么说,已经宣布:“所有在三部曲网站上发布的亚马逊图书链接都将自动重写以添加我们的附属链接”看,我并不真的责怪他们,因为他们是免费的,我打赌他们的大多数目标受众都会屏蔽广告。然而,我想将来我只会链接到出版商的网站。WTF StackOverflow通过他们的亚马逊推荐劫持了我的链接,没有任何通知:-|是的,坏家伙…,无论如何已经被宣布:“所有亚马逊图书链接张贴在三部曲网站将自动重写,以添加我们的附属链接”看,我并不真的责怪他们,因为这样是免费的,我打赌他们的大多数目标受众块广告。不过,我想在未来我会我只会链接到出版商的网站。