0

我有一个提供 JSON 的 Rails 应用程序,并且想测试一些通过 http 请求和处理一些 json 的代码。在不存根 http 请求响应的情况下测试此代码的最佳方法是什么?

我正在考虑解雇 webrick 来服务 Rails 应用程序,但在技术上无能为力。任何指向代码示例的指针都值得赞赏。

# lib/bam.rb
require 'open-uri'

class Bam
  def bam host='localhost'
    hash = JSON.parse( open("http://#{host}/bam.json) )
    # process hash
  end
end

# spec/bam_spec.rb
RSpec.describe 'Bam' do
  before(:all) do
    # fire up webrick
  end
  after(:all) do
    # shutdown webrick
  end

  it 'bam' do
    hash = Bam.new.bam
    hash.should eq('bam' => 'bam')
  end
end
4

1 回答 1

1

您可以使用空中宝石https://github.com/brooklynDev/airborne。您还可以比较 JSON 结构。

于 2015-07-02T11:46:04.907 回答