2012-02-20 12 views
29

Me gusta ejecutar mis pruebas de Rspec con Spork corriendo en una pestaña separada. Normalmente ejecuto mis pruebas usando rspec spec, con lo cual pretendo decir "buscar recursivamente y ejecutar todo en la carpeta spec".¿Cómo puedo obtener Rspec para ejecutar todas las pruebas anidadas en una carpeta?

Recientemente me di cuenta de que esto en realidad no ejecuta todas mis pruebas. Ahora tengo un archivo de especificación en spec/requests que no se está ejecutando. Lo sé porque he editado una de las pruebas para elevar un error, y ejecute el siguiente:

  • rspec spec - planteó ningún error.
  • rspec spec/requests - todavía no se ha producido ningún error, y 0 examples, 0 failures!
  • rspec spec/requests/my_controller.rb - bingo. 17 examples, 1 failure y el error tiene mi mensaje de error.

¿Por qué Rspec no encuentra todos mis archivos de prueba? ¿Es esto una cuestión de configuración, o necesito usar un comando diferente para ejecutar mis pruebas?

Necesito ejecutar todas mis pruebas a la vez para asegurarme de que no estoy presentando regresiones.

(No usar Spork no hace ninguna diferencia, por cierto.)

Respuesta

57

Rspec debe ya buscar de forma recursiva a través del directorio que usted nombró y encontrar todas las pruebas. Sin embargo, tenga en cuenta que está buscando archivos que terminan en _spec.rb. Tal vez algunos de sus archivos no son nombrados correctamente?

Si necesita ser más específico sobre qué archivos debe encontrar, también puede usar la opción --pattern. Por ejemplo: rspec --pattern spec/requests/*_spec.rb. (Opción --pattern es igual a -P. Tomado de rspec --help)

1

puede crear una tarea rake

desc "Run PCMag tests" 
    RSpec::Core::RakeTask.new('test') do |t| 
    t.rspec_opts = ["-Ilib","--format documentation","--color"] 
    t.pattern = ['spec/test/*.rb'] 
end 

a continuación, ejecutar la prueba de comandos rastrillo.

Por encima de comando se ejecutará todas las pruebas .RB en la carpeta 'test'

favor marque siguiente enlace para más detalles.

http://testautomationarchives.blogspot.in/2013/10/rspec-rake-framework-in-ruby-with.html

Cuestiones relacionadas