当我访问某些页面时,我得到以下HTML:
<!DOCTYPE HTML PUBliC "-//W3C//DTD HTML 4.0 Transitional//EN" "@R_419_6822@://www.w3.org/TR/REC-HTML40/loose.dtd">
因此,当我尝试使用has_content()选择器时,它会引发以下错误:
Failure/Error: page.should have_content("HELLO") Capybara::ElementNotFound: Unable to find xpath "/HTML"
我可以访问的应用程序的某些页面很好,但其他一些我不能.甚至有些页面可以在某些地方使用,而不是在其他地方使用:
require 'spec_helper'describe HomeController do it "shows the website description" do visit root_path puts page.HTML.length # ==> 108 (no HTML) ... endendrequire 'spec_helper'describe FlowsController do it "should do stuff" do visit root_path puts page.HTML.length # ==> 4459,works even if the exact same one dIDn't work in home_controller_spec! visit flows_path puts page.HTML.length # ==> 3402,works visit new_user_session_path puts page.HTML.length # ==> 3330,works within("form#new_user") do fill_in 'Email',:with => 'email@example.com' fill_in 'Password',:with => 'password' click_on 'Sign in' end puts page.HTML.length # ==> 108,No HTML endend
我在this post中读到,这是在同时使用Capybara和webrat时可能发生的错误.但我根本不使用webrat,我仍然得到错误……
这是我的Gemfile:
source '@R_419_6822@s://rubygems.org'gem 'rails','3.2.6'gem 'pg'gem 'thin'gem 'devise'# Gems used only for assets and not required# in production environments by default.group :assets do gem 'sass-rails','~> 3.2.3' gem 'coffee-rails','~> 3.2.1' gem 'uglifIEr','>= 1.0.3'end# Add rspec for testinggroup :test,:development do gem "rspec-rails","~> 2.0" gem "capybara" gem "factory_girl_rails"endgem 'jquery-rails'解决方法 尝试传递一个String来描述,而不是Controller类
describe "whatever" do ...end总结
以上是内存溢出为你收集整理的ruby-on-rails – Capybara :: ElementNotFound:无法在没有webrat的情况下找到xpath“/ html”全部内容,希望文章能够帮你解决ruby-on-rails – Capybara :: ElementNotFound:无法在没有webrat的情况下找到xpath“/ html”所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)