2010-03-17 62 views
2

我明白將類,模塊等放在Rails的lib文件夾中的好處,但我一直無法找到測試這些文件的clean方式。大多數情況下,單元測試似乎是合乎邏輯的方法。如何在Rails中測試lib文件?

我想我的問題是:什麼是測試lib文件的「rails方式」?

+0

你在'lib'中的代碼可以完成各種各樣的事情..測試後臺工作者的方式,比如說一些與亞馬遜連接的東西可以非常不同 – 2010-03-17 15:28:00

+0

@neutrino讓我們來簡單說一下它是一個帶有幾個方法的泛型類執行一些文本操作。與完整的Model不同,但它不會將任何內容保存到數據庫中。 – jerhinesmith 2010-03-17 16:52:51

+0

任何你不只是爲他們做單元測試的原因?單元測試不一定只適用於ActiveRecord模型。 – wesgarrison 2010-03-20 01:22:05

回答

1

您的lib目錄不是由rails自動加載的。

您可以使用ActiveSupport::Dependencies覆蓋const_missing。基本上,rails會嘗試在引導時加載常量,如果它們未定義或不在內存中,它將查看您的加載路徑。

如果您有像my_class.rb這樣的文件,rails期望它是MyClass

這樣做的好處是,如果你在你的lib目錄中的某些東西,你不必要求它使用相對路徑,你就可以說require 'something',而不是require 'lib/something'

相關問題