2017-01-10 20 views
0

我只是想運行一些測試,我得到這個錯誤:無法運行Rspec的,由於改革的錯誤:「改革未定義的方法'功能」 ::形式:類(NoMethodError)」

undefined method `feature' for Reform::Form:Class (NoMethodError) 

它發生在/usr/local/bundle/gems/reform-2.2.3/lib/reform/form.rb:75, form.rb中的行是第一次使用DSL字feature。 當然,這並不會發生,當我運行我的導軌應用程序,但只有當我運行RSpec ..

它被定義在改革使用的一次性寶石。起初,我認爲問題是使用舊版本的rspec,但即使在我更新到最新版本之後,仍然有問題。閱讀代碼或文檔並不會導致我在加載測試和應用程序運行時出現不同的特定行爲。

我用寶石的版本是: rspec的-3.3.0,改革-2.2.3,一次性-0.3.2

沒有人有線索?

- 更新 -

拆卸整個測試框架(RSpec的刪除和刪除所有相關文件),並重新安裝後,我到RSpec的是通過自身運行點,但嘗試加載我的環境時,測試文件在相同的錯誤上失敗。

回答

0

問題是我們增加了對改革合同的覆蓋,並沒有太優雅,因此不要求原改革合同要求的所有東西。作爲修正,我們現在創建了一個基地 從Reform::Contract繼承的合同,而不是覆蓋它,現在一切正常。我們在運行RSpec而不是運行Rails c時發現它的唯一原因是由於事物的加載順序不同。

相關問題