2011-11-24 166 views
2

我使用這個命令來運行軌道單元測試:軌單元測試錯誤:「測試是不是一個模塊」

$ ruby -Itest test/unit/post_test.rb 

我得到一個錯誤「測試是不是一個模塊(類型錯誤)」,並沒有測試運行。

它是否與我有一個名爲「Test」的模型類有關?如果沒有辦法做到這一點,那麼重構和改變類名的最快方法是什麼?

+1

難道它與我有一個名爲「Test」的模型類有關嗎? - 是的。我認爲是這樣的 – railscard

+0

我是ruby的新手,我使用記事本++。是否有技巧將此模型/控制器/視圖更改爲不同的名稱,或者是否需要手動執行此操作? –

+1

不確定Notepad ++,請嘗試使用RubyMine,TextMate或NetBeans快速更改文件名。如果你手動做 - 不要忘記改變所有的類名 – railscard

回答

5

我相信你是對的,這是因爲你已經使用不應該使用的名稱創建模型(在這種情況下測試)。

所有你應該需要做的是:

創建遷移到重命名數據庫表:(rename_table :oldname, :newname)

  • 重命名模型。
  • 編輯其他模型中的任何關聯。
  • 重命名控制器(如果需要)
  • 修改的routes.rb
  • 修改在視圖中的任何鏈接。
  • 重命名視圖。
  • 重命名控制器和視圖中的模型。
  • 重命名和修改任何測試。