Problema con functional e integration test

Ciao a tutti,

sono alla ricerca di suggerimenti per risolvere un problema su cui sto
sbattendo la testa da qualche giorno.

Ho un’applicazione Rails 2.3.14 che gira su ruby-1.9.2-p180 (ma
ottengo lo stesso difetto impostando ruby-1.9.2-p320 con rvm).

Tutto funziona regolarmente tranne il fatto che, quando faccio girare
i test funzionali e di integrazione, ad ogni failure ottengo un
messaggio del tipo:

test_qualsiasi(QualsiasiTest)
[~/.rvm/gems/ruby-1.9.2-p180/gems/actionpack-2.3.14/lib/action_controller/test_case.rb:119]:

In questo messaggio la segnalazione del test che fallisce è corretta,
ma l’indicazione della linea di failure è sempre, invariabilmente la
119 di test_case.rb. Il che rende quasi impossibile testare, perché,
se un test include più di un assert, è impossibile sapere quale genera
la failure. Questo problema non succede con gli unit test, che danno
informazioni corrette.

Qualsiasi indizio è ben accetto!

Grazie,
Silvano


Considera l’ambiente prima di stampare questa email. Be a total user
rather than a complete waster.

. . . Silvano S. . . .
❡ email: [email protected]
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/

Ciao….

L’unico aiuto che posso dare: se guardi il codice del file in questione
(ammesso che abbia beccato la versione corretta):

def clean_backtrace(&block)
yield
rescue ActiveSupport::TestCase::Assertion => error
framework_path =
Regexp.new(File.expand_path("#{File.dirname(FILE)}/assertions"))
error.backtrace.reject! { |line| File.expand_path(line) =~
framework_path }
raise
end

Dove la rigga 119 e quello con YIELD….

quindi ti muore in clean_backtrace ma non riesce a passare da questo
metodo alla riga del test che ha effettivamente dato errore?

Gente piu intelligente e piu rails di me spero dara’ una risposta.

Davide

PS: Come dice Pris in Blade Runner: Moriremo … noi siamo stupidi.

Il mio approccio davanti agli errori sconosciuti è chiedere a google.
Googlando il messaggio
gems/actionpack-2.3.14/lib/action_controller/test_case.rb:119 tra gli
altri trovo il link
http://www.redmine.org/builds/logs/build_1.4-stable_sqlite3_ruby-1.9.3-p125_40.html
dove si legge di questo errore:

  1. Failure: test_add_user(AdminTest)
    [/var/lib/jenkins/ruby/ruby-1.9.3-p125/lib/ruby/gems/1.9.1/gems/actionpack-2.3.14/lib/action_controller/test_case.rb:119]:
    Expected response to be a <:redirect>, but was <500> <“No HTTP_REFERER
    was set in the request to this action, so redirect_to :back could not be
    called successfully. If this is a test, make sure to specify
    request.env["HTTP_REFERER"].”>

Anche nel tuo caso a /test_case.r b:119 segue un messaggio d’errore
circostanziato? Sarebbe bene darcelo perché ti si possa aiutare.

Paolo

Esatto Davide: quella è la riga da cui arrivano tutte le segnalazioni
di failure (cosa evidentemente impossibile, visto che gli assert sono
da tutt’altra parte).

Grazie del feedback,
Silvano

2012/10/29 Davide R. [email protected]:

end

Ho un’applicazione Rails 2.3.14 che gira su ruby-1.9.2-p180 (ma
ma l’indicazione della linea di failure è sempre, invariabilmente la

Ml mailing list
[email protected]
http://lists.ruby-it.org/mailman/listinfo/ml


Ml mailing list
[email protected]
http://lists.ruby-it.org/mailman/listinfo/ml


Considera l’ambiente prima di stampare questa email. Be a total user
rather than a complete waster.

. . . Silvano S. . . .
❡ email: [email protected]
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/

Premesso che sto tirando completamente a caso…

considerato che usi RVM

dove stanno i file di test? E sopratutto che permessi hanno?

Non e’ che test_case.rb non riesce a leggere i files?

Ciao

La ricerca su Google non mi aveva portato a molto. Non ero finito
sulla pagina che indichi, però.

Il messaggio che segue /test_case.r b:119 è il messaggio della failure
che sta fallendo: cambia da test a test, da assert a assert (come mi
aspetto che debba correttamente succedere).

s/v

2012/10/29 Paolo M. [email protected]:

was set in the request to this action, so redirect_to :back could not be


Ml mailing list
[email protected]
http://lists.ruby-it.org/mailman/listinfo/ml


Considera l’ambiente prima di stampare questa email. Be a total user
rather than a complete waster.

. . . Silvano S. . . .
❡ email: [email protected]
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/