2013-07-24 45 views
15

Tôi đã thấy một số bài viết SO giải thích cách sử dụng pry để bước vào các thử nghiệm rspec và có thể thực hiện điều này. Khi tôi đạt đến điểm dừng, tôi đang đấu tranh để hiển thị bất kỳ thông tin hữu ích nào. Đối với mã này bên dưới, tôi muốn kiểm tra đối tượng phản hồi từ bảng điều khiển nâng cao:Làm thế nào để kiểm tra các biến rspec với trình gỡ lỗi nâng lên

describe 'happenings' do 
    context "#index (GET /api/v1/flat_happenings.json)" do 
    before(:each) do 
     30.times { FactoryGirl.create(:flat_happening) } 
     get "/api/v1/flat_happenings.json" 
    end 
    describe "should list all flat_happenings" do 
     binding.pry 
     it { JSON.parse(response.body)["flat_happenings"].length.should eq 30 } 
    end 
    end 
end 

Bất kỳ ý tưởng nào về cách thực hiện việc này?

Trả lời

18

Bạn nên đặt binding.pry bên trong khối it.

+0

Cảm ơn. Rất đơn giản - tại sao tôi không nghĩ về điều đó ... – klavado

3

này nên làm việc:

describe 'happenings' do 
    context "#index (GET /api/v1/flat_happenings.json)" do 
    before(:each) do 
     30.times { FactoryGirl.create(:flat_happening) } 
     get "/api/v1/flat_happenings.json" 
    end 
    it "should list all flat_happenings" do 
     binding.pry 
     JSON.parse(response.body)["flat_happenings"].length.should eq 30 
    end 
    end 
end 

HTH

+1

Cảm ơn. Câu trả lời của bạn cũng hoạt động nhưng khi Sergey trả lời trước, tôi phải chấp nhận câu trả lời của anh ấy. – klavado

8

Để sử dụng nâng lên trong thông số kỹ thuật chúng ta cần thêm require 'pry' bên trong file spec_helper.rb. Sau đó, chúng tôi có thể sử dụng binding.pry trong bất kỳ thông số kỹ thuật nào.