VCR不希望在挂钩之前和之后处理请求。

时间:2013-08-08 13:52:12

标签: ruby rspec vcr

我为一个HTTP REST API开发了一个ruby包装器,使用带有vcr的rspec来测试我的请求。项目加载到travis-ci.org,它可以自动运行测试。 我的测试里面有问题。 VCR无法处理挂钩前后的请求,这是为了防止向服务器填充测试数据。

  describe '.find' do
    before :all do
      @project = Project.new(name: "Project#{Time.now.to_i}").save
    end

    after :all do
      @project.delete
    end

    #tests
  end

我收到了vcr错误:

An error occurred in a before(:all) hook.
  VCR::Errors::UnhandledHTTPRequestError: 

当然,我不想在每个测试中创建和删除远程实体。

1 个答案:

答案 0 :(得分:4)

  describe '.find' do
    before :all do
      VCR.use_cassette("some_cassette_name") do
        @project = Project.new(name: "Project#{Time.now.to_i}").save
      end
    end

    after :all do
      VCR.use_cassette("some_other_cassette_name") do
        @project.delete
      end
    end

    #tests
  end