Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.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 如何为ActiveRecord扩展gem编写测试_Ruby_Activerecord_Rubygems_Rspec2 - Fatal编程技术网

Ruby 如何为ActiveRecord扩展gem编写测试

Ruby 如何为ActiveRecord扩展gem编写测试,ruby,activerecord,rubygems,rspec2,Ruby,Activerecord,Rubygems,Rspec2,我正在创建一个RubyGem,它将扩展ActiveRecord功能。我阅读了以下关于如何扩展ActiveRecord的堆栈溢出帖子: 我使用rspec进行测试,如本文所述 我的问题是,如何使用Rspec测试我的活动记录扩展方法,因为正如我所想,我们没有使用DB来保存记录 如何为这些类型的gem编写测试?您可能想看看acts asfu gem: 顺便说一句,你可以在你的rspec测试中使用db,但你不能;我不想这样做来测试扩展。如果你还没有找到解决方案,我也在为同样的问题而挣扎,最终还是遇到了。它

我正在创建一个RubyGem,它将扩展ActiveRecord功能。我阅读了以下关于如何扩展ActiveRecord的堆栈溢出帖子:

我使用rspec进行测试,如本文所述

我的问题是,如何使用Rspec测试我的活动记录扩展方法,因为正如我所想,我们没有使用DB来保存记录


如何为这些类型的gem编写测试?

您可能想看看acts asfu gem:


顺便说一句,你可以在你的rspec测试中使用db,但你不能;我不想这样做来测试扩展。

如果你还没有找到解决方案,我也在为同样的问题而挣扎,最终还是遇到了。它使用了一种非常可靠的方法,工作起来就像一场梦

基本上,它涉及引用测试助手中的活动记录文件,测试本身从模式和种子文件创建该文件

这种方法实现起来非常简单,帮助我更好地理解ActiveRecord扩展是如何工作的。瑞安,干杯


希望能有所帮助。

@broistse谢谢你的回答,目前我正在检查“作为偏执狂的行为”,这也是同样的概念,但是
测试单元
不过..谢谢,我在测试之前创建了db模式(在spec\u helper文件中)。谢谢你的回复