c# - visual - Kann ich beim Ausführen eines VS Unit Tests debuggen?




visual studio unit test not recognized (2)

Ja , mit dem Visual Studio-Testprojekt können Sie Haltepunkte festlegen und Ihren Code schrittweise bearbeiten.

Stellen Sie sicher, dass Sie Ihre Tests mit dem Debug-Menü ausführen - Tests -> Debug -> Tests im aktuellen Kontext. Verwenden Sie für jede Testklasse oder Testmethode die Tastenkombination Strg-R Strg-T .

Wenn sich der Cursor in einer Methode ( entweder einer Testmethode oder dem vom Test abgedeckten Code ) befindet, wird er an allen Haltepunkten in dieser Methode oder an beliebigen Haltepunkten im Codeausführungspfad unterbrochen. Wenn sich der Mauszeiger in der Klasse oder zwischen Testmethoden befindet, werden alle Tests in der Klasse ausgeführt. Haltepunkte werden hier wie oben getroffen.

Ich möchte eine Benutzerkomponente testen, die benutzerdefinierte Ereignisse verwendet. Wenn Sie dies tun, ohne VS Unit Test Framework zu verwenden debug.assert erfolgreich, beim Ausführen der gleichen Sache mit VS Unit Test Framework, Assert fehlschlägt das ist unlogisch, also möchte ich während Unit-Test mit VS-Framework debuggen. Aber es scheint, ich kann nicht, weil Code nie am Debug-Punkt pausieren, die ich eingestellt habe.

Gibt es eine Möglichkeit, in diesem Fall eine Pause am Debug-Punkt zu erzwingen?

Update: Ich meine nicht im Testprojekt selbst, sondern im Zielprojekt während des Testprojekts.


Die Antwort von P. Campbell ist nicht genau richtig. Wenn Sie ein Projekt debuggen (z. B. eine WCF-Services-Site), ist es nicht möglich, Unit-Tests zu starten, Debug-Modus oder nicht. Die entsprechenden Optionen sind in Visual Studio 2012 einfach ausgegraut.

Dies bedeutet, dass Sie einfach keinen Out-of-Process-Code aus einem Komponententest debuggen können. Sie können nur Code debuggen, der im Unit-Test direkt aufgerufen wurde.

Dies ist ein großes Problem in VS2012, dass sie jetzt beheben müssen.





unit-testing