我有一个相当大的应用程序,在许多地方都有远程请求。
我知道如何添加VCR的唯一方法是在每个请求测试周围添加这种类型的块:
VCR.use_cassesse "whatever" do
# request processing
end
但是当你收到20个这样的请求时 - 它可能会变得太杂乱。
有没有办法只编辑VCR配置文件,以便立即记录所有请求?
答案 0 :(得分:0)
在您的测试套件中,您可以插入/弹出磁带,这将记录您测试中的所有请求( it 方法调用)。
根据我的经验,每个描述的录音带是合适的。
before do VCR.insert_cassette 'whatever' end after do VCR.eject_cassette end
答案 1 :(得分:0)
您可以使用VCR的请求挂钩来执行此操作:
VCR.configure do |vcr|
vcr.before_http_request do |request|
cassette_name = cassette_name_for(request)
VCR.insert_cassette(cassette_name)
end
vcr.after_http_request do |request|
VCR.eject_cassette
end
end
这假设您已经编写了cassette_name_for
方法,该方法根据提供的HTTP请求应用您的磁带命名方案。