Forum: Italian Ruby user group Problema con functional e integration test

Posted by Silvano Stralla (sistrall)
on 2012-10-27 13:21
(Received via mailing list)
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 Stralla . . .
❡ email: silvano.stralla@sistrall.it
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/
Posted by Davide Rambaldi (Guest)
on 2012-10-29 11:51
(Received via mailing list)
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.
Posted by Paolo Montrasio (pmontrasio)
on 2012-10-29 15:17
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-stabl...
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
Posted by Silvano Stralla (sistrall)
on 2012-10-29 17:44
(Received via mailing list)
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 Rambaldi <davide.rambaldi@gmail.com>:
> 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
>> Ml@lists.ruby-it.org
>> http://lists.ruby-it.org/mailman/listinfo/ml
>
> _______________________________________________
> Ml mailing list
> Ml@lists.ruby-it.org
> 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 Stralla . . .
❡ email: silvano.stralla@sistrall.it
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/
Posted by Silvano Stralla (sistrall)
on 2012-10-29 17:48
(Received via mailing list)
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 Montrasio <paolo@paolomontrasio.com>:
> was set in the request to this action, so redirect_to :back could not be
> _______________________________________________
> Ml mailing list
> Ml@lists.ruby-it.org
> 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 Stralla . . .
❡ email: silvano.stralla@sistrall.it
❡ site: http://www.sistrall.it
★ kitchen: http://keepcooking.it/
Posted by Davide Rambaldi (Guest)
on 2012-10-30 10:53
(Received via mailing list)
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
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.