Come eseguire un singolo test di contesto dovrebbe in ruby ??Test :: Unit framework
-
10-07-2019 - |
Domanda
In genere posso testare un normale metodo Test :: Unit usando la seguente sintassi della riga di comando per un metodo " delete_user_test " ;:
ruby functional/user_controller_test.rb -n delete_user_test
Ora quando sto usando il plugin shoulda con Test :: Unit provo ad usare la stessa tecnica come segue:
...
context "Deleting a User" do
should "remove user from user table" do
...
end
end
Quindi provo ad eseguire il test singolo come segue:
ruby functional/user_controller_test.rb -n "test: Deleting a User should remove user from user table"
Questo non funziona. Qualcuno sa come posso eseguire un singolo test di contesto usando shoulda e Test :: Unit. Ho un paio di test diversi in un file di test e voglio eseguire solo quello usando TDD senza dover aspettare che tutti i test vengano eseguiti.
Soluzione
Questo funziona per me:
ruby functional/user_controller_test.rb -n "/Deleting a User/"
Inserisci semplicemente una stringa abbastanza lunga dal nome del tuo contesto nell'espressione regolare.
Altri suggerimenti
Anche l'uso del nome completo del test con uno spazio alla fine sembra funzionare:
ruby -Itest
functional/user_controller_test.rb
-n "test: Deleting a user should remove user from user table. "
La combinazione dei due approcci ha funzionato bene per me; usando sia -I test
che regexp.
ruby -Itest functional/user_controller_teset.rb -n "/remove user from user table/"