【发布时间】:2017-06-21 10:52:03
【问题描述】:
我们目前正在使用思想机器人shoulda gem,主要是为了规范我们的 Rails 模型的功能。
似乎应该提供的许多匹配器实际上是在测试 rails 行为。例如
describe Blog do
it { should have_many(:posts) }
end
只测试模型定义中的这段代码
class Blog < ActiveRecord::Base
has_many :posts
end
确实有效。
这不是测试 rails 行为(与我们模型的行为相反)吗? 这不是一般要避免的事情吗?
【问题讨论】:
-
成像
posts在您的应用程序某处使用,有人删除了has_many :posts,未经测试您不会知道有问题,直到您的应用程序崩溃。
标签: ruby-on-rails shoulda thoughtbot