Pregunta

Estoy tratando de escribir pruebas de integración con Capybara, pero cada vez que aparece el navegador controlado por selenio, la página está en blanco. Además, para una simple afirmación como page.should have_selector('title'), Obtengo errores como

Failure/Error: page.should have_selector('title')
   expected following output to contain a <title/> tag:
   <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml">
   <head></head>
   <body></body>
   </html>

Es decir, la página está vacía.

Estoy visitando un camino que es válido. Si hago un save_and_open_page, la página es allá.

La parte relevante del archivo gem es

group :test, :development do
  gem 'rspec-rails', '~> 2.4'
  gem 'nokogiri'
  gem 'webrat'

  # capybara for javascript testing
  gem 'capybara'

  # launchy allows us to do save_and_launch_page, which is very helpful during testing
  gem 'launchy'
end

La aplicación está usando Rails 3.1.1. hice bundle install y agregado

require 'capybara/rails'
require 'capybara/rspec'

para mi spec_helper.

Tenga en cuenta que estos son integración pruebas, no pruebas de controlador, no me faltan render_views.

Tengo otras aplicaciones donde estas cosas funcionan bien, lo que me hace pensar que me estoy perdiendo algo en mi configuración o hay un problema con las versiones específicas que se utilizan.

Selenium está tratando de usar Firefox, y estoy en OS X Snow Leopard, si eso importa.

¿Fue útil?

Solución

Es posible que desee intentar eliminar Webrat de su archivo gem. Creo que tanto Webrat como Capybara intentan ejecutar las pruebas en el directorio de solicitudes.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top