賽程?爲什麼夾具需要在表格中有一個匹配的列?Ruby on Rails的4個燈具使用Rails(我的環境的Rails 4.2)</p> <p>爲什麼運行測試時,爲什麼它當一個固定存在,但沒有一個表具有相同名稱錯誤時需要表
實施例1:(表中不存在)
- 創建一個夾具joes.yml(喬的表不存在)
- 運行耙測試:集成
- 錯誤你」將獲得的是:
的ActiveRecord :: StatementInvalid:SQLite3的::的SQLException:沒有這樣的表:喬斯:DELETE FROM 「招財」
實施例2:(表中存在,但列不)
- 創建一個夾具products.yml。這種情況下,產品確實存在
- 添加一個yml塊,其中包含產品表中沒有的列的名稱。例如添加其他條目:集成
的ActiveRecord ::夾具:: FixtureError:表中 「產品」 有沒有指定的列 「其他」 在products.yml文件
我想我可以在我的測試中使用燈具作爲參考的常用位置,但不需要與我的數據庫相匹配。
如果我想測試創建用戶。然後驗證用戶信息是否正確,是否有將這些信息置於每次測試之外的硬編碼之外的地方? – user8745303
好吧 - 我個人使用FactoryGirl來處理那種事情https://github.com/thoughtbot/factory_girl,但是像fixtures這樣的東西,我會有我的用戶測試,這將會創建一個user1 - 長途跋涉,手動測試,並在我的燈具中創建一個單獨的user2,這可用於我所有其他測試。 – Tim