2009-03-26 7 views
7

ci sono diverse schede in GUI corridore di NUnit: alt text http://i43.tinypic.com/2lxglj5.pngCome registrare errori, messaggi in un test dell'unità NUnit?

ho capito che l'utilizzo di Console.WriteLine (...) mostra i messaggi nella scheda "Console.Out". La mia domanda è a cosa servono le altre schede e in che modo posso registrare i messaggi?

[EDIT]

mi scuso come mi rendo conto che la mia domanda iniziale non era abbastanza chiaro. Quello che intendo fare è creare un ampio rapporto sui risultati una volta eseguiti tutti i casi di test unitari. Così stavo esplorando il modo in cui i vari messaggi che possono essere registrati durante l'esecuzione di un test. Non vedo l'ora di creare un rapporto sui risultati come:

 
==== TEST1 starts ==== 
Start Time: 2009-03-26 11:15:13 AM 
Checking operation 1....OK 
Checking value of variable "X": 52.56....OK 
End Time: 2009-03-26 11:15:19 AM 
Time taken to execute test: 0.00:00:06.000 

==== TEST2 starts ==== 
. 
. 

Qualche suggerimento come posso ottenere questo?

risposta

2

impostazioni per le schede sono nelle opzioni NUnit - vedere il docs here.

Ad esempio, se si seleziona Uscita errore console di visualizzazione, tale scheda visualizzerà il testo scritto su Console.Error dai test.

0

Esempio:

Assert.AreNotEqual(0, result.Count); 
    [exec] 
    [exec] Tests run: 11, Failures: 1, Not run: 0, Time: 50.422 seconds 
    [exec] 
    [exec] Failures: 
    [exec] 1) Domain.UnitTest.ManagerTest.TestEmbeddedIndex 
: Expected: not 0 
    [exec] But was: 0 
    [exec] 

E 'questo quello che stai cercando?
L'assert è molto ampia. In caso di fallimento di una delle condizioni, Nunit lancia un errore.

Assert.AreEqual(),Assert.AreSame(), Assert.Contains(),Assert.Fail(); 

Inoltre Nunit ha cose come

[ExpectedException] 

scavare nel documentation per imparare di più ..

1

Sulla base del Edit aggiornamento:
Se fossi in te farei questo come parte del meccanismo di accumulo. a Nant farei qualcosa di simile ...

<target name="setup" description="Initializes test properties"> 
    <echo message="Sucessfully initialized tests" /> 
</target> 

Visualizzazione dei messaggi della console dopo ogni [Test] è un'idea IMHO male. Ritarda i test che conta quando ne esegui 1000. I test devono essere incredibilmente veloci.