我有一個相當大的應用程序,在很多地方有遠程請求。如何記錄使用VCR的所有請求?
我知道如何添加VCR的唯一方法就是增加這種類型的塊周圍的每一個要求測試:
VCR.use_cassesse "whatever" do
# request processing
end
但是當你有20個這樣的請求 - 這可能顯得過於雜亂。
是否有辦法編輯VCR配置文件,以便它立即記錄所有請求?
我有一個相當大的應用程序,在很多地方有遠程請求。如何記錄使用VCR的所有請求?
我知道如何添加VCR的唯一方法就是增加這種類型的塊周圍的每一個要求測試:
VCR.use_cassesse "whatever" do
# request processing
end
但是當你有20個這樣的請求 - 這可能顯得過於雜亂。
是否有辦法編輯VCR配置文件,以便它立即記錄所有請求?
在您的測試套件中,您可以插入/彈出卡帶,這將記錄您的測試中的所有請求(它爲方法調用)。
從我的經驗來看,每卡帶描述是一個很好的選擇。
before do VCR.insert_cassette 'whatever' end after do VCR.eject_cassette end
您可以使用錄像機的要求掛鉤做到這一點:
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
這是假設你已經寫了將基於所提供的HTTP請求您的盒式命名方案一cassette_name_for
方法。