web-dev-qa-db-fra.com

remplacer Console.WriteLine dans NUnit?

je n'ai pas fait grand chose avec NUnit auparavant, mais je voulais juste vider du texte dans une fenêtre à la manière d'une console.

e.g. Console.WriteLine("... some information...");  

cela ne fonctionnera pas bien sûr parce que NUnit conduit les choses.

Je suis en train de créer des tests unitaires et je veux vider une liste de valeurs de variables à inspecter pendant le débogage. Ce n'est pas strictement un test unitaire si je dois le faire, je l'admets, mais ce serait pratique.

36
sgtz

Vous pouvez voir la sortie de la console, il vous suffit de sélectionner l'onglet "Sortie de texte" dans le runner NUnit GUI.

enter image description here

Mise à jour

Si vous utilisez le lanceur de test ReSharper, la sortie de la console doit être affichée. Assurez-vous que la fenêtre de sortie du testeur s'affiche en cliquant sur le bouton "Afficher la sortie" dans la barre d'outils du testeur:

enter image description here

Vous devriez alors obtenir quelque chose comme suit:

enter image description here

42
Tim Lloyd

Essayez d'utiliser System.Diagnostics.Debug.WriteLine au lieu.

33
Paul Creasey

Dans NUnite v3, vous pouvez également écrire dans la sortie des résultats de test pour le débogage avec

TestContext.Out.WriteLine("Message to write to log");
31
Ashitakalax

Dans Visual Studio 2017, dans le Test Explorer fenêtre, il y a un lien Output dans le volet inférieur Test. Cela fait apparaître tout ce qui est écrit sur la console pendant ce test unitaire.

14
LostNomad311

Je viens de perdre une demi-heure à essayer de trouver la vue Test-Output. Pas:

  1. Ouvrez l'Explorateur de tests
  2. Sélectionnez un test particulier
  3. Exécutez-le s'il n'a jamais été exécuté.
  4. Cliquez sur le lien de sortie dans le volet des résultats des tests.

Pas besoin de remplacer Console.WriteLine avec quoi que ce soit car cette vue enregistre les messages de:

Console.WriteLine

Trace.WriteLine

Debug.WriteLine

TestExplorer.Out.WriteLine

J'espère que quelqu'un trouvera cela utile.

enter image description here

3
MrClan