2011-12-07 17 views
6

मैं सिनात्रा आवेदन और रूबी 1.9.2 के परीक्षण के लिए spork का उपयोग कर रहा हूं, परीक्षण लगभग 3.5 सेकंड में चलते हैं लेकिन रूबी 1.8.7 में वे औसत 1.2 सेकंड होते हैं। मैंने रूबी 1.9.3 और यहां तक ​​कि जरुबी भी कोशिश की लेकिन मुझे जिन रत्नों का उपयोग कर रहा हूं उनमें कुछ त्रुटियां थीं। रूबी 1.9.2 के आरएसपीसी प्रदर्शन को 1.8.7 के स्तर तक लाने का कोई तरीका है?रुबी 1.9.2 में 1.8.7 से मेरे आरएसपीईसी परीक्षण धीमे क्यों चलते हैं?

मेरे Gemfile:

source :rubygems 
gem 'sinatra', '1.3.1' 
gem 'thin', '1.3.1' 
gem 'haml', '3.1.4' 
gem 'datamapper', '1.2.0' 
gem 'dm-postgres-adapter', '1.2.0' 
gem 'carrierwave', '0.5.8' 
gem 'carrierwave-datamapper', '0.2.0' 

group :test do 
    gem "dm-sqlite-adapter" 
    gem "spork" 
    gem "rspec" 
    gem "rack-test" 
end 

spec_helper.rb:

require 'rubygems' 
require 'spork' 
require 'sinatra' 
require 'rack/test' 
require 'rspec' 

require File.join(File.dirname(__FILE__), '..', 'app.rb') 
require File.join(File.dirname(__FILE__), '..', 'model/model.rb') 

Spork.prefork do 
    set :environment, :test 
    set :files, "test_files" 
end 

Spork.each_run do 
    RSpec.configure do |config| 
    config.before(:each) { DataMapper.auto_migrate! } 
    config.after(:all) do 
     FileUtils.rm_rf(Dir["#{settings.root}/public/test_files"]) 
    end 
    end 
end 

धन्यवाद!

+0

मुझे लगता है कि मुझे एमआरआई 1.9.2 लोड मॉड्यूल के तरीके से जुड़े एक प्रदर्शन समस्या के बारे में पढ़ना याद है। मैं देखूंगा कि क्या मैं लिंक खोद सकता हूं – Magnus

उत्तर

1

आरएसपीईसी के अपने परीक्षण के अनुसार नहीं: https://gist.github.com/939865। यह तेजी से माना जाता है। यह आपके ढेर में कुछ धीमा हो सकता है।