2011-09-13 11 views
5

मैंने अभी अपने ऐप को रेल 3.1 में अपग्रेड किया है और अब जब भी मैं परीक्षण चलाता हूं तो मुझे अपने टर्मिनल में SQL आउटपुट का एक टन मिलता है।रेल 3.1 के साथ परीक्षण के दौरान टर्मिनल में एसक्यूएल लॉगिंग अक्षम करें? (आरएसपीईसी/ककड़ी)

उदाहरण के लिए:

(1.0ms) TRUNCATE TABLE `users`; 
    (0.1ms) SET FOREIGN_KEY_CHECKS = 1 
. Company Load (0.3ms) SELECT `companies`.* FROM `companies` LIMIT 1 
    Sector Load (0.3ms) SELECT `sectors`.* FROM `sectors` WHERE `sectors`.`name` = 'General' LIMIT 1 
    (0.1ms) BEGIN 
    (0.3ms) SELECT 1 FROM `sectors` WHERE `sectors`.`name` = BINARY 'General 63' LIMIT 1 
    SQL (0.2ms) INSERT INTO `sectors` (`created_at`, `name`, `price_in_cents`, `updated_at`) VALUES ('2011-09-13 20:46:48', 'General 63', 0, '2011-09-13 20:46:48') 
    (0.3ms) COMMIT 

इस निष्क्रिय करने के लिए कोई तरीका है?

मैं rspec instafail का उपयोग कर रहा हूं और मैं अब उन्हें प्रतीत नहीं कर सकता क्योंकि यह SQL आउटपुट के साथ बाढ़ है।

मैं जोड़ने की कोशिश की इस लेख में क्या था, लेकिन यह मदद नहीं था: http://tesoriere.com/2011/05/28/rails-3.1---sql-logging-to-stdout-during-testing--with-rspec--test-unit--or-cucumber-/

+1

आप यहां सुझाव का प्रयास कर सकते हैं: http://stackoverflow.com/questions/1635112/way-to-disable-rails-sql-logs – varfoo

उत्तर

11

आप अपने वातावरण/test.rb में config.log_level स्थापित करने की कोशिश की है?

config.log_level = :error 

यह सबसे आसान समाधान होगा, जब तक ऐसा कोई कारण न हो कि यह काम नहीं कर रहा है।

संबंधित मुद्दे