2012-07-08 22 views
5

Tôi đang cố gắng kiểm tra ứng dụng đường ray của tôi với rspec 2.10.0 + capybara 1.1.2. Dưới đây là tập tin thử nghiệm của tôiđường ray 3.2 capybara Capybara :: ElementNotFound: Không thể tìm thấy xpath "/ html"

require 'spec_helper' 

    describe AdminPanelController do 
     describe "index" do 
     it "should have return code 200" do 
      visit '/admin' 
      page.should have_content "hello" 
      #response.status.should be(200) 
     end 
     end 
    end 

Và đây là kết quả kiểm tra

Failure/Error: page.should have_content "hello" 
Capybara::ElementNotFound: 
    Unable to find xpath "/html" 

Tôi google về vấn đề này nhưng chỉ tìm thấy thông tin mà webrat có thể là một vấn đề tuy nhiên tôi không có cài đặt đá quý này. Cảm ơn mọi lời đề nghị.

Trả lời

14

Loại thử nghiệm sai. Điều này trông giống như một kiểm tra bộ điều khiển, trong đó thực hiện các thử nghiệm với các phương thức như get và post và nằm trong thư mục spec/controllers. Yêu cầu thông số kỹ thuật, sử dụng capybara, nằm trong spec/yêu cầu. Chạy $ rails generate scaffold SomeModel để xem chúng trông như thế nào.

Nếu bạn hiểu được ở trên nhưng vẫn muốn sử dụng Capybara cho thử nghiệm điều khiển của bạn, chỉnh sửa khối mô tả của bạn:

describe AdminPanelController, :type => :request do 
    ... 
end 
+0

được tìm kiếm cao và thấp cho câu trả lời này. Sharp một! –

+5

Với Capybara 2.0, điều này không nên là 'type:: request' mà là' type:: feature'. –

Các vấn đề liên quan