ざっくりまとめると SinatraのModulerスタイルで書いたときは、RSpecなどでテストするときに上書きするRack::Testのappメソッドを def app Sinatra::Application end ではなく def app HelloSinatra end みたいに、アプリケーションのクラス(上記の場合はHelloSinatra)を返すようにしないとテストがうまく動かないという話です。 環境 Ruby 2.1.0 Sinatra 1.4.4 RSpec 2.14.7 Rack::Test 0.6.2 なにごと? Testing Sinatra with Rack::Testを見つつこんな感じのコードとテストを書いてたわけですよ。 # app.rb require 'sinatra/base' class HelloSinatra < Sinatra::Base ge