我們目前主要使用認知機器人shoulda gem來指導我們導軌模型的功能。應該用shoulda嗎?
看起來應該提供的很多匹配器實際上是測試導軌行爲。例如。
describe Blog do
it { should have_many(:posts) }
end
只是測試,從模型定義
class Blog < ActiveRecord::Base
has_many :posts
end
此代碼實際工作。
是不是測試導軌行爲(而不是我們的模型的行爲)? 這是不是一般要避免的事情?
在您的應用程序中某處使用了圖像'posts',並且某人刪除了'has_many:posts',沒有測試,直到應用程序崩潰纔會知道有問題。 – Thanh