À l'aide de ReSharper, comment faire pour afficher la sortie de débogage pendant une longue unité de test?

Je suis en utilisant xUnit avec le ReSharper test runner et la xUnitContrib resharper plugin.

Quand j'ai une longue épreuve de course à pied, j'aimerais être en mesure de produire un indicateur de progrès pour l'Unité de Test de la fenêtre de Sortie.

J'ai essayé Debug.WriteLines, Trace.WriteLine et Console.WriteLine. Qui ont toutes le même comportement - rien n'indique dans la fenêtre de sortie jusqu'à ce que le test est terminé.

Par exemple:

[Fact]
public void Test()
{
    Debug.WriteLine("A");
    Trace.WriteLine("B");
    Console.WriteLine("C");

    Thread.Sleep(10000);
}

Le test ne montre pas de sortie jusqu'à ce que les 10 secondes se sont écoulées et le test est terminé. Comment puis-je obtenir une sortie le long du chemin?

Mise à JOUR de 1

J'ai essayé aussi avec MSTest et NUnit. NUnit est la seule qui montre la sortie le long du chemin.

MSTest et XUnit ne pas retourner tout de sortie jusqu'à ce que le test est terminé. Ce qui est curieux, c'est que tout le XUnit et NUnit test de sortie ressemble à ceci:

A
B
C

La MSTest de sortie ressemble à ceci:

C


Debug Trace:

A
B

Compte tenu de toutes ces variations, je pense que la réponse est que c'est le lanceur de test de la mise en œuvre de décider comment et quand à la sortie. Personne ne sait si il est possible de configurer le testeur XUnit?

Mise à JOUR 2

Je pense que ce doit être une carence en xUnitContrib. Posté à leur CodePlex issue tracker.

  • Debug.WriteLine() fonctionne parfaitement bien pour moi quand je suis en mode debug. Donc, si vous voulez vous connecter de manière générale je recommande brenton réponse
  • Non, il ne fonctionne pas avec xunit. Pas de sortie s'affiche jusqu'à ce que le test est terminé.
  • Je vois, je n'ai pas joué avec XUnit seule NUnit. Et NUnit enregistrement ne travaillent le long de la debug fils...
  • Oui, NUnit fonctionne bien pour cela. Voir ma mise à jour.