簡體   English   中英

將rcr與vcr一起使用時,Zlib :: GzipFile :: Error

[英]`Zlib::GzipFile::Error` when using `vcr` with rspec

我正在使用VCR(Pro)進行Railscast#291測試

我想將rspec與vcr一起使用。 沒有vcr的測試通過此代碼。

# spec/requests/zip_code_lookup_spec.rb
require "spec_helper"

describe "ZipCodeLookup" do
  it "show Beverly Hills given 90210" do
      visit root_path
      fill_in "zip_code", with: "90210"
      click_on "Lookup"
      page.should have_content("Beverly Hills")
  end
end

作為本教程,我將代碼放在VCR.use_cassette如下所示:

require "spec_helper"

describe "ZipCodeLookup" do
  it "show Beverly Hills given 90210" do
    VCR.use_cassette "zip_code/90210" do
      visit root_path
      fill_in "zip_code", with: "90210"
      click_on "Lookup"
      page.should have_content("Beverly Hills")
    end
  end
end

並創建了這個文件:

# spec/support/vcr.rb
VCR.configure do |c|
  c.cassette_library_dir = Rails.root.join("spec", "vcr")
  c.stub_with :fakeweb
end

根據教程,rspec測試應該通過此測試,但失敗並出現以下錯誤:

  1) ZipCodeLookup show Beverly Hills given 90210
     Failure/Error: click_on "Lookup"
     Zlib::GzipFile::Error:
       not in gzip format
     # ./app/models/zip_code.rb:6:in `initialize'
     # ./app/controllers/zip_code_lookup_controller.rb:3:in `new'
     # ./app/controllers/zip_code_lookup_controller.rb:3:in `index'
     # ./spec/requests/zip_code_lookup_spec.rb:8:in `block (3 levels) in <top (required)>'
     # ./spec/requests/zip_code_lookup_spec.rb:5:in `block (2 levels) in <top (required)>'

我不知道為什么gzip出現在這里,而不出現在其他的rails項目中。

我怎么解決這個問題?

剛剛有同樣的問題:在fakeweb現在創業板是在VCR棄用 ,使用webmock代替

在您的Gemfile中,替換

gem 'fakeweb'

通過

gem 'webmock'

重新捆綁,應該分類

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM