2011-06-06 10 views
11

Ho un'applicazione Rails 3.0.7. Nel test funzionale ho il seguente codice. Non sto usando rspec o altro. Questo è un semplice test funzionale alla vaniglia che viene fornito con le guide.Come affermare il contenuto del corpo della risposta in rotaia 3 test funzionale

assert_response :success 

Sopra l'asserzione sta passando. Tuttavia ho bisogno di affermare sul contenuto completo che viene restituito come il corpo della risposta. Come posso accedere al corpo della risposta?

risposta

34

È possibile accedere al corpo di risposta in un test funzionale tramite:

response.body 

Spesso, in questo stile di test, si vuole veramente utilizzare il metodo:

assert_select 

Un bel modo di controllare le API assert_select avviene tramite la gemma trucco:

gem install cheat 
cheat assert_select 
+1

'response.body' sarà una stringa json. Se devi operare su di esso come un hash, puoi usare 'JSON.parse (response.body)' per ottenere quell'hash. – Ziggy

Problemi correlati