【发布时间】:2013-10-23 16:27:05
【问题描述】:
VCR Cucumber 文档展示了许多使用小型 Sinatra 应用程序模拟远程服务器的示例,使用从 vcr_cucumber_helpers.rb 加载的名为 start_sinatra_app 的函数。
我想在我的 Rails / RSpec / VCR 测试中使用类似的东西,但还没有弄清楚如何将 start_sinatra_app(或等效项)放入我的测试框架。我的幼稚方法不起作用,因为——毫不奇怪——它找不到vcr_cucumber_helpers.rb。
我需要在以下内容中添加什么才能使其在 RSpec 下工作?还是我在草丛中做错了?
# file: spec/app/models/sinatra_test_spec.rb
require 'spec_helper'
start_sinatra_app(:port => 7777) do
get("/") { "Hello" }
end
describe "sinatra rspec test" do
it 'calls the sinatra app' do
VCR.use_cassette("sinatra_rspec_test") do
res = Net::HTTP.get_response('localhost', "/", 7777)
res.body.should == 'Hello'
end
end
end
【问题讨论】:
标签: ruby-on-rails-4 rspec sinatra net-http vcr