tests test running run rails how ruby-on-rails ruby unit-testing shoulda

ruby-on-rails - running - test ruby on rails



Cómo ejecutar una sola prueba de contexto de shoulda en ruby Test:: Unit framework (3)

Por lo general, puedo probar un método regular de Test :: Unit utilizando la siguiente sintaxis de la línea de comandos para el método "delete_user_test":

ruby functional/user_controller_test.rb -n delete_user_test

Ahora cuando estoy usando el plugin shoulda con Test :: Unit, trato de usar la misma técnica de la siguiente manera:

... context "Deleting a User" do should "remove user from user table" do ... end end

Entonces trato de ejecutar la prueba única de la siguiente manera:

ruby functional/user_controller_test.rb -n "test: Deleting a User should remove user from user table"

Esto no funciona. ¿Alguien sabe cómo puedo ejecutar una sola prueba de contexto usando shoulda y Test :: Unit. Tengo un par de pruebas diferentes en un archivo de prueba y solo quiero ejecutar la que usa TDD sin tener que esperar a que se ejecuten todas las pruebas.


Combinar los dos enfoques me ha funcionado bien; utilizando tanto -I test y la expresión regular.

ruby -Itest functional/user_controller_teset.rb -n "/remove user from user table/"


Esto funciona para mí:

ruby functional/user_controller_test.rb -n "/Deleting a User/"

Simplemente coloque una cadena razonablemente larga de su nombre de contexto en la expresión regular.


Usar el nombre completo de la prueba con un espacio al final parece funcionar también:

ruby -Itest functional/user_controller_test.rb -n "test: Deleting a user should remove user from user table. "