2014-01-14 36 views
0

我有一個相當大的應用程序,在很多地方有遠程請求。如何記錄使用VCR的所有請求?

我知道如何添加VCR的唯一方法就是增加這種類型的塊周圍的每一個要求測試:

VCR.use_cassesse "whatever" do 
    # request processing 
end 

但是當你有20個這樣的請求 - 這可能顯得過於雜亂。

是否有辦法編輯VCR配置文件,以便它立即記錄所有請求?

回答

0

在您的測試套件中,您可以插入/彈出卡帶,這將記錄您的測試中的所有請求(它爲方法調用)。

從我的經驗來看,每卡帶描述是一個很好的選擇。

 
    before do 
    VCR.insert_cassette 'whatever' 
    end 

    after do 
    VCR.eject_cassette 
    end 
0

您可以使用錄像機的要求掛鉤做到這一點:

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方法。

相關問題