Если у вас есть свои спецификации и помощник по спецификациям в / spec dir, то эта строка должна идти вверху вашей спецификации:
require_relative "./spec_helper.rb"
Мне также нравится использовать File.expand_path и File.join, так как это более надежно, чем делать это самостоятельно, например,
require File.dirname(__FILE__) + "/../spec_helper.rb"
становится
require_relative File.expand_path( File.join File.dirname(__FILE__), "/../spec_helper.rb" )
Кроме того, я не склонен к require "sinatra"
, в приложении это есть. Если вам не хватает битов из sinatra, то, возможно, но я добавляю такие вещи вместо стойки:
ENV['RACK_ENV'] = 'test'
Наконец, если ваше приложение Sinatra использует модульный стиль, вам придется включить его тоже. Я делаю это в верхней части спецификации, например:
describe "The site" do
include Rack::Test::Methods
include MyApp
let(:app) { MyApp.app }
YMMV. Дайте нам знать, если что-то из этого работает.
Попробуйте другой тест:
before(:all) { get "/" }
subject { last_response }
it { should be_ok }