Come utilizzare Console.WriteLine da [TestMethod]?

5

Sto cercando di mostrare alcune informazioni da un metodo [TestMethod].

Di solito usiamo NUnit e una linea con Console.WriteLine funziona bene e possiamo vederlo nella finestra 'output', ma su questo progetto dobbiamo usare gli strumenti di test embebed con VS2010 e Console.WriteLine non funziona perché non posso vedere nulla.

    
posta hello B 09.03.2012 - 16:02
fonte

4 risposte

10

Sono d'accordo con il poster precedente che, se hai bisogno di verificare qualcosa, lo asserisci ...

Tuttavia ... Il messaggio Console.WriteLine () mostrerà, dopo che il test ha completato il doppio clic sulla riga dei risultati del test nella scheda Risultati del test, questo aprirà i risultati per il singolo test che contiene un "Output console standard "sezione che contiene i tuoi messaggi Console.WriteLine ().

    
risposta data 09.03.2012 - 16:28
fonte
9

OK, devi usare Assert e tutto il resto, ma le altre risposte non rispondono alla domanda vera e propria. Forse hai le tue ragioni (come ho il mio, che è il modo in cui ho trovato questa domanda).

Questo potrebbe aiutarti un po ' :

It turns out to see a test’s output, you just double-click on the test summary line, and all the output is down at the bottom of that window. You get Console.Out messages and (more importantly) {Trace,Debug}.WriteLine()

Se stai utilizzando ReSharper, seleziona il tuo metodo di test nel riquadro Sessioni di test unità e l'output sarà nella scheda Output:

Nel mio caso, avevo solo bisogno di testare rapidamente alcune prestazioni. Poiché ho già un progetto di test unitario, è stato più rapido farlo in questo modo rispetto alla creazione di una nuova applicazione console. Quindi, invece di dire semplicemente alle persone perché la loro domanda è sbagliata, credo che dovremmo dire loro perché la loro domanda è sbagliata, ma cerchiamo comunque di rispondere alla domanda.

Ci scusiamo per il rant.

    
risposta data 20.03.2014 - 10:47
fonte
6

Perché hai bisogno di "vedere qualcosa"?

Dovresti semplicemente usare gli asserti per convalidare che il test ha funzionato correttamente.

    
risposta data 09.03.2012 - 16:06
fonte
1

È possibile impostare l'output standard e l'input di Console come TextWriter / TextReader ed eseguire affermazioni basate sul contenuto di quelle.

link

    
risposta data 09.03.2012 - 16:22
fonte

Leggi altre domande sui tag