Skip to content

Instantly share code, notes, and snippets.

@trongrg
Created September 18, 2012 10:02
Show Gist options
  • Save trongrg/3742358 to your computer and use it in GitHub Desktop.
Save trongrg/3742358 to your computer and use it in GitHub Desktop.
Rspec and Cucumber run in parallels with Spork
RAILS_ENV=cucumber rake db:drop db:create db:schema:load db:migrate
#config/environments/cucumber.rb
#this is a copy of config/environments/test.rb
HotelManagement::Application.configure do
# Settings specified here will take precedence over those in config/application.rb
# The test environment is used exclusively to run your application's
# test suite. You never need to work with it otherwise. Remember that
# your test database is "scratch space" for the test suite and is wiped
# and recreated between test runs. Don't rely on the data there!
config.cache_classes = true
# Configure static asset server for tests with Cache-Control for performance
config.serve_static_assets = true
config.static_cache_control = "public, max-age=3600"
# Log error messages when you accidentally call methods on nil
config.whiny_nils = true
# Show full error reports and disable caching
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
# Raise exceptions instead of rendering exception templates
config.action_dispatch.show_exceptions = false
# Disable request forgery protection in test environment
config.action_controller.allow_forgery_protection = false
# Tell Action Mailer not to deliver emails to the real world.
# The :test delivery method accumulates sent emails in the
# ActionMailer::Base.deliveries array.
config.action_mailer.delivery_method = :test
# Use SQL instead of Active Record's schema dumper when creating the test database.
# This is necessary if your schema can't be completely dumped by the schema dumper,
# like if you have constraints or database-specific column types
# config.active_record.schema_format = :sql
# Print deprecation notices to the stderr
config.active_support.deprecation = :stderr
end
connection: &conn
adapter: mysql2
encoding: utf8
reconnect: false
pool: 5
username: root
password:
development:
<<: *conn
database: development
test:
<<: *conn
database: test
production:
<<: *conn
database: production
cucumber:
<<: *conn
database: cucumber
#features/support/env.rb
#define the environment as cucumber
require 'rubygems'
require 'spork'
Spork.prefork do
ENV["RAILS_ENV"] ||= 'cucumber'
require 'cucumber/rails'
require 'cucumber/rails/world'
Rails.env = 'cucumber'
end
Spork.each_run do
end
Then you can run rspec and cucumber at the same time, speed up the testing process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment