2

我为一个 HTTP REST API 开发了一个 ruby​​ 包装器,使用 rspec 和 vcr 来测试我的请求。项目被加载到 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

我收到了一个录像机错误:

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

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

4

1 回答 1

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
于 2013-08-09T05:59:09.373 回答