2011-08-19 10 views
5

miei test tutti passano ei miei risultati assomigliano a questo:punti mancanti di avanzamento e 0% passato in uscita rotaie di test (Test Unit, Rails 3.1 RC6, Ruby 1.9.2)

introduttiva

Finito in 361,988,408 mila secondi.

479 test, 1017 asserzioni, 0 errori, 0 errori, 0, 0 pendings omissioni, 0 notifiche 0% passati

Perché non vedo i soliti punti di avanzamento che ho usato per vedere in Rails 2.3? E perché dice "0% superato"? Mi chiedo se i punti diventino bianchi e siano effettivamente lì, nello spazio apparentemente vuoto? Non mi piace cambiare il mio terminale per avere uno sfondo nero. ;-)

Anche nei miei test di unità dice "Finito in 0.0 secondi". che è chiaramente sbagliato.

+0

Sei riuscito a risolvere questo problema? Grazie! –

+0

OK, questo succede solo con Ruby 2.0.0. Se torno a Ruby 1.9.3 - i punti di progresso stanno comparendo. Strano ... –

risposta

2

Ok, ho trovato una soluzione a questo: ho sostituito la gemma dell'unità di test nel mio file gem con la gemma più piccola. Questo ha risolto l'output del test.

+0

Beh, ho 'gem 'minitest'' nel mio' Gemfile' ma i sintomi descritti nella tua domanda sono ancora presenti. Qualche idea? – jibiel

+0

Ho risolto questo problema sostituendo 'Test :: Unit :: TestCase' con' MiniTest :: Unit :: TestCase' e ​​'richiede 'test/unit'' con' require' minitest/autorun'' – deivid

0

Stai usando qualcosa come Timecop per caso? Mi ricordo di essere perplesso sui "0,0 secondi" una volta e si è scoperto che ho dimenticato di "tornare in time", dopo le mie prove ...

mi piacerebbe anche avere i miei punti indietro =/

+0

Grazie, sì, non sto usando il timecop, ma penso che sto scherzando con la classe Time, quindi sono abbastanza sicuro che questa sia la ragione. – Nico

0

Ho aggiornato "test-unit" e ho recuperato i punti. Al momento di scrivere questa versione è 3.1.8.

QUESTA NON E 'UNA RISPOSTA ESISTENTE. Altre risposte suggeriscono di sostituire l'unità di test con il minitest, o di dire che qualcosa è correlato a timecop. Nel mio caso non potrei sostituire l'unità di test con minitest perché hanno API incompatibili. Stavo usando una vecchia versione dell'unità di test, quindi ho deciso di aggiornarla. Ora sto usando la versione 3.1.8 e i puntini vengono mostrati di nuovo. Potrebbe essere un bug in una vecchia versione di test-unit.

+0

Questo non riguarda l'esistente risposte * a questa domanda *. Si tratta di duplicare la stessa risposta a più domande. Se a questa domanda e ad un'altra si può rispondere con la stessa risposta esatta, probabilmente sono duplicati (le domande sono), quindi contrassegna una domanda come un duplicato dell'altro. Se la domanda non è un duplicato, assicurati che le risposte stiano affrontando le differenze uniche in queste domande. –

+0

In altre parole, questa risposta è sempre la stessa di [questa copia di questa risposta] (http://stackoverflow.com/questions/26104868/ruby-why-are-no-dots-showing-when-i- eseguire test-con-TestUnit/40266180 # 40266180). Se quella domanda e questa domanda hanno la stessa risposta, perché non contrassegnare uno di questi come duplicato dell'altro? Se non sono domande doppie, assicurati che questa risposta risolva questa domanda, l'altra risposta indirizzi l'altra. –