A cosa dovrebbe servire ogni scheda di NUnit Gui Runner?
Domanda
Esistono sei schede nel runner NUnit Test:
Errors and Failures
Tests Not Run
Console.Out
Console.Error
Trace
Log
So a cosa servono Errori e fallimenti ma lo scopo delle restanti schede è confuso. Sia Console.Out che Traccia sembrano avere uno scopo simile.
Come ha sottolineato un commento, ho scritto una domanda simile chiedendo come si scrive a tutte le schede. In questa domanda, sto chiedendo perché si scrive in ciascuna delle schede? Perché si scrive nella scheda Console.Out rispetto alla Traccia rispetto alla scheda Registro ? Qual è lo scopo previsto di ciascuna scheda?
Soluzione
La scheda Test non eseguiti mostra i test che sono stati saltati. Questi sono test con l'attributo Ignore () definito. Ciò è utile se si desidera disabilitare temporaneamente un test che è noto per essere temporaneamente non valido o che richiede troppo tempo per essere eseguito su base regolare.
Le restanti schede sono tutte trattate nell'altra tua domanda:
- Console.Out - > Console.WriteLine ()
- Console.Error - > Console.Error.WriteLine ()
- Traccia - > System.Diagnostics.Trace.WriteLine ()
- Log - > log4net output
Console.Out scrive i dati su stdout.
Console.Error scrive i dati su stderr.
La traccia scrive i dati nel Trace Ojbect .
Log4Net scrive su " varietà di target log. "
Lo scopo di tutti questi è lo stesso: ottenere informazioni su ciò che il codice sta facendo mentre viene eseguito, senza utilizzare punti di interruzione e un debugger. Quale si utilizza dipende dalle proprie esigenze: i metodi della console producono un output visibile dall'utente. La traccia è facile da mostrare / nascondere (e include molte informazioni extra), ma non sembra avere alcun tipo di persistenza a supporto. La registrazione può essere permanente, ma richiede l'overhead di mantenere il file di registro.
Altri suggerimenti
Mi aspetto che Console.Out venga utilizzato durante la scrittura o il debug dei test, mentre Trace verrebbe utilizzato per visualizzare l'output di traccia dal codice in prova. L'output della traccia nel codice può essere condizionale utilizzando Trace.WriteIf ecc. E attivato dalle definizioni degli interruttori nel file di configurazione.
-
Console.Out = output dal tuo codice di test (ad esempio, scaricare i contenuti degli oggetti restituiti dai metodi in fase di test).
-
Console.Error = dettagli di output degli errori rilevati dal tuo codice di test
-
Traccia = traccia diagnostica dal codice in prova.