Problembehandlung bei den Testtools für Visual Studio-ALM

Beim Testen von Code können unter bestimmten Bedingungen Fehler und Warnungen auftreten, oder der Test kann fehlschlagen. In diesem Thema werden einige dieser Bedingungen und Schritte zur Problembehandlung beschrieben.

Beheben von Problemen bei der Testausführung

Bedingungen, die das Ausführen von Tests verhindern, können in der Regel auf einen Fehler beim Bereitstellen der Testdatei oder anderer, zum Ausführen des Tests erforderlicher Dateien zurückgeführt werden.

  • Remotetests. Bei Remotetests können auch Kommunikationsprobleme mit dem Remotecomputer auftreten. Diese und andere Fehler auf der Test- und Ausführungsebene werden unter Beheben von Problemen bei der Testausführung beschrieben.

  • ASP.NET-Komponententests. Wenn der ASP.NET-Komponententest im IIS-Prozess ausgeführt wird, können Sie den ASP.NET-Prozess aus Sicherheitsgründen als nicht-Standardbenutzer ausführen, d. h. mit einer anderen Prozessidentität. Die Testausführung kann in diesem Fall fehlschlagen.

  • Problembehandlung für Webtests. Beim Ausführen von Webtests können verschiedene Fehler auftreten. Mögliche Ursachen sind fehlende Datenbindungsattribute, Probleme mit den Sicherheitseinstellungen oder Zugriffsversuche auf eine Website hinter der Firewall. Weitere Informationen finden Sie unter Problembehandlung für Webleistungstests.

  • Problembehandlung für Auslastungstests. Beim Ausführen von Auslastungstests können verschiedene Fehler auftreten. Mögliche Ursachen sind Probleme in der Auslastungstest-Datenbank, die im Auslastungstest festgelegten Indikatoren, ein nicht ordnungsgemäß konfigurierter Test-Agent und -controller oder einer der Tests im Auslastungstest. Weitere Informationen finden Sie unter Problembehandlung für Auslastungstests.

Erneutes Signieren von Assemblys mit starken Namen

Beim Ausführen von Komponententests wird Code in einer Binärdatei getestet. Wenn diese Tests durch Instrumentieren der Binärdatei ausgeführt werden, können Codeabdeckungsdaten gesammelt werden. Weitere Informationen finden Sie unter Gewusst wie: Erfassen von Codeabdeckungsdaten. Bei der Instrumentierung wird Code hinzugefügt, mit dem in der Binärdatei Codeabdeckungsinformationen generiert werden.

Wenn die zu testende Binärdatei jedoch eine Assembly mit starkem Namen ist, wird die Signatur aufgrund der Codeänderung beim Instrumentieren ungültig. Visual Studio versucht daher automatisch, die Assembly nach der Instrumentation sofort erneut zu signieren. Weitere Informationen zu Assemblys mit starken Namen finden Sie unter Assemblys mit starkem Namen.

Das erneute Signieren kann unter verschiedenen Bedingungen fehlschlagen. Informationen zum Vermeiden dieser Bedingungen finden Sie unter Instrumentieren und erneutes Signieren von Assemblys.

Codeabdeckungsdaten und VSPerfMon.exe

Wenn VSPerfMon.exe gleichzeitig mit Tests ausgeführt wird, für die Codeabdeckungsdaten gesammelt werden, treten folgende Ereignisse auf:

  • Wenn VSPerfMon.exe mit der Option TRACE oder SAMPLE ausgeführt wird, schlägt der gleichzeitig ausgeführte Test fehl. Auf der Seite Testlaufdetails wird ein Fehler angezeigt.

  • Wenn VSPerfMon.exe mit der COVERAGE-Option ausgeführt wird, wird der Prozess VSPerfMon.exe beendet.

In beiden Fällen können Sie das Problem umgehen, indem Sie VSPerfMon.exe und Tests, für die Codeabdeckungsdaten gesammelt werden, nicht gleichzeitig ausführen. Weitere Informationen zum Tool VSPerfMon.exe finden Sie unter VSPerfMon.

Wann könnte dies der Fall sein?

VSPerfMon.exe wird in der Regel in folgenden Situationen ausgeführt:

  • Eine Profilerstellungssitzung wurde gestartet, möglicherweise in einer anderen Visual Studio-Instanz als derjenigen, in der die Tests ausgeführt werden.

  • Codeabdeckungs- oder Profilerstellungsdaten werden durch direktes Ausführen von VSPerfMon.exe oder mithilfe des Wrappers VSPerfCmd.exe gesammelt. Letzteres ist häufiger der Fall.

Codeabdeckungsdaten werden nicht ordnungsgemäß angezeigt

Wenn Sie für die Tests das Sammeln von Codeabdeckungsdaten festgelegt haben, die Daten jedoch nicht oder anders als erwartet angezeigt werden, kann eine der hier beschriebenen Situationen zutreffen:

  • Codeabdeckungsdaten werden nicht angezeigt. Beim Ausführen des Tests werden bestimmte Binärdateien, z. B. COM-DLLs, vom ursprünglichen Speicherort und nicht aus dem Testbereitstellungsverzeichnis geladen. Diese Binärdateien müssen direkt instrumentiert werden. Andernfalls werden keine Codeabdeckungsdaten gesammelt, obwohl der Test erfolgreich ausgeführt und keine Warnung auf Ausführungsebene generiert wird. Weitere Informationen finden Sie unter Auswählen des Instrumentationsordners.

  • Codeabdeckung wird nicht hervorgehoben. Wenn Sie Tests ausführen, Codeabdeckungsdaten sammeln und anschließend Testergebnisse anzeigen, wird der während des Testlaufs getestete Code von Visual Studio in der Quellcodedatei hervorgehoben angezeigt. Sie können die Farben auswählen, mit denen abgedeckter, nicht abgedeckter und teilweise abgedeckter Code hervorgehoben wird. Wenn einer oder mehrere dieser Codeabschnitte nicht hervorgehoben werden, stellen Sie sicher, dass sich die ausgewählten Farben von der Hintergrundfarbe der Quellcodedatei unterscheiden. Weitere Informationen zum Auswählen der Farben zum Hervorheben finden Sie im Abschnitt "Ändern der Anzeige der Codeabdeckungsdaten" unter Gewusst wie: Erfassen von Codeabdeckungsdaten.

  • Codeabdeckungsdaten werden nicht ordnungsgemäß zusammengeführt. Sie können Ergebnisse zusammenführen, in denen ein oder mehrere ASP.NET-Testläufe enthalten sind. ASP.NET-Daten werden jedoch im Fenster Codeabdeckungsergebnisse unter Zusammengeführte Ergebnisse als separate Knoten und nicht in einem einzelnen, zusammengeführten Knoten angezeigt.

  • Zusammengeführte Codeabdeckungsdaten werden nicht vollständig angezeigt. Nach dem Zusammenführen von Codeabdeckungsdaten können Sie diese als XML-Datei auf einen Datenträger exportieren. Wenn Sie diese Datei erneut importieren und dann mit weiteren Daten zusammenführen, werden nicht alle Statistiken angezeigt.

  • Codeabdeckungsdaten werden nicht importiert. Zum Importieren von Codeabdeckungsdaten muss Visual Studio bestimmte Dateien auf dem Datenträger finden können.

  • Instrumentierte Binärdateien werden überschrieben. Für ein Programm, das während eines manuellen Tests ausgeführt wird, sollen Codeabdeckungsdaten gesammelt werden. Wenn Sie zum Starten dieses Programms STRG+F5 verwenden, wird durch diese Tastenkombination die Binärdatei des Programms neu erstellt. Da die instrumentierte Binärdatei hierdurch überschrieben wird, können keine Codeabdeckungsdaten gesammelt werden.

Allgemeine Informationen zum Sammeln von Codeabdeckungsdaten finden Sie unter Gewusst wie: Erfassen von Codeabdeckungsdaten.

Siehe auch

Aufgaben

Gewusst wie: Zusammenführen von Codeabdeckungsdaten

Problembehandlung für Webleistungstests

Problembehandlung für Auslastungstests

Konzepte

Arbeiten mit zusammengeführten Codeabdeckungsdaten