Erweitern von Tests mit Ghost-Text und Beheben von Fehlerhaften Tests
Nachdem Ihr Testprojekt einige Testfälle enthält, können GitHub Copilot Ihnen helfen, die Abdeckung zu erweitern und Fehler zu beheben, ohne Visual Studio Code zu verlassen. Ghost-Textvorschläge fügen zusätzliche Testfälle in der Datei hinzu, die Sie bearbeiten, während der Test-Explorer und der /fixTestFailure Schrägstrichbefehl Ihnen helfen, fehlerhafte Tests zu diagnostizieren und zu beheben. Zusammen schließen diese Features die Schleife für den Komponententestworkflow, den Sie in der Chatansicht gestartet haben.
Testabdeckung mit Ghost-Text-Vorschlägen erweitern
Ghost-Text ist die Inline-Codevervollständigung, die während der Eingabe im Editor erscheint. Wenn eine Testdatei bereits einige Testfälle enthält, verwendet GitHub Copilot die vorhandenen Muster, um ähnliche Testfälle für zusätzliche Szenarien vorzuschlagen. Dies ist die schnellste Möglichkeit, die Abdeckung zu erweitern, sobald Ihre ersten Tests vorhanden sind.
So erweitern Sie eine Testdatei mit Geistertext:
Öffnen Sie eine Testdatei, die mindestens ein oder zwei vollständige Testfälle enthält.
Positionieren Sie den Cursor am Ende des letzten Testfalls, und drücken Sie die EINGABETASTE , um eine neue Zeile zu beginnen.
Geben Sie eine neue Testmethode ein oder schreiben Sie einen beschreibenden Kommentar, wie z. B.
// Test that ProcessOrder throws when the order total is negative.GitHub Copilot zeigt einen Ghost-Textvorschlag an, der die Testmethode basierend auf dem umgebenden Code, den Importen und den vorhandenen Testmustern abschließt.
Drücken Sie die TAB-TASTE , um den Vorschlag anzunehmen, oder drücken Sie ESC , um ihn zu schließen.
Verfeinern Sie den angenommenen Vorschlag nach Bedarf. Sie können weiterhin eingeben, um den Test zu erweitern, oder Sie können den nächsten Ghost-Textvorschlag auslösen, indem Sie die EINGABETASTE drücken.
Ghost-Text funktioniert am besten, wenn:
- Die Testdatei zeigt bereits das Muster an, dem GitHub Copilot folgen soll (z. B. "Arrange-Act-Assert"-Struktur oder ein parametrisiertes Test-Attribut).
- Auf die zu testende Methode wird in der Datei mithilfe einer
using-Direktive oder über einen importierten Namespace verwiesen. - Ihr Kommentar gibt eindeutig das Szenario an, das Sie testen möchten.
Tip
Verwenden Sie Ghost Text, um Randfälle schnell zu einer bestehenden Testklasse hinzuzufügen. Für umfangreichere Arbeit, z. B. das Erstellen einer völlig neuen Testklasse, kehren Sie zur Chatansicht zurück und verwenden Sie die Agents "Fragen", "Plan" oder "Agent".
Fehlgeschlagene Tests im Test-Explorer beheben
Wenn ein Test fehlschlägt, stellt der Test-Explorer einen Einklick-Einstiegspunkt in GitHub Copilot bereit.
Führen Sie Ihre Tests im Test-Explorer oder über die grüne Wiedergabeschaltfläche neben einer Testmethode aus.
Bewegen Sie im Test-Explorer den Mauszeiger über einen fehlgeschlagenen Test.
Wählen Sie die Schaltfläche " Testfehler beheben " (Funkeln-Symbol) aus.
GitHub Copilot öffnet eine Chatsitzung, fügt den Fehlerhaften Test und seine Ausgabe als Kontext an und schlägt einen Fix vor.
Überprüfen Sie die vorgeschlagene Korrektur.
Der Vorschlag kann den Anwendungscode, den Testcode oder beides abhängig von der Ursache des Fehlers aktualisieren.
Anwenden oder Verwerfen des Vorschlags.
Verwenden Sie Beibehalten, um die vorgeschlagenen Änderungen anzuwenden oder verwenden Sie Rückgängig, um sie zu verwerfen. Führen Sie den Test erneut aus, um den Fix zu bestätigen.
Beheben Sie fehlschlagende Tests mit /fixTestFailure
Sie können den Fixworkflow auch in der Chatansicht starten, was hilfreich ist, wenn Sie zusätzlichen Kontext anfügen möchten oder wenn Sie mehrere fehlerhafte Tests gleichzeitig ausführen.
Öffnen Sie die Chatansicht.
Geben Sie den
/fixTestFailureSchrägstrichbefehl ein.Fügen Sie optional zusätzlichen Kontext an, z. B. verwandte Quelldateien oder zuletzt verwendete Terminalausgabe.
Folgen Sie den Vorschlägen GitHub Copilot, um den fehlerhaften Test zu beheben, und führen Sie den Test dann erneut aus, um den Fix zu bestätigen.
Zulassen, dass der Agent Fehler automatisch überwachen und beheben kann
Wenn Sie den Agent zum Ausführen von Tests verwenden, überwacht er die Testausgabe, identifiziert Fehler und versucht automatisch, die Tests zu beheben und erneut auszuführen. Dies ist nützlich, wenn Sie ein Gerüst für ein neues Testprojekt erstellen oder große Änderungen vornehmen, die sich auf viele Tests gleichzeitig auswirken.
So verwenden Sie den Agent für die automatische Testwartung:
Öffnen Sie die Chatansicht, und wählen Sie "Agent " aus der Agentauswahl aus.
Geben Sie eine Eingabeaufforderung an, die die Ausführung der Tests umfasst, z. B.:
Run the xUnit tests in the Calculator.Tests project. If any tests fail, propose and apply fixes, then rerun the tests until they pass.Bestätigen oder ablehnen Sie die Toolaufrufe und Terminalbefehle, die der Agent vorschlägt.
Überprüfen Sie die Änderungen, die der Agent angewendet hat, bevor Sie sie akzeptieren.
Auswählen des richtigen Tools für den Auftrag
Verwenden Sie die folgenden Anleitungen, um zu entscheiden, welches Feature verwendet werden soll:
- Ghost-Text eignet sich am besten, wenn Sie einer vorhandenen Testdatei, die bereits das Muster anzeigt, weitere Testfälle hinzufügen möchten.
- Das Beheben von Testfehlern im Test-Explorer ist am besten geeignet, wenn ein einzelner Test fehlschlägt und Sie eine schnelle, fokussierte Lösung wünschen.
-
/fixTestFailurein der Chatansicht ist am besten geeignet, wenn Sie zusätzlichen Kontext anfügen oder mehrere Fehler durcharbeiten möchten. - Agentgesteuerte Testausführungen sind am besten geeignet, wenn GitHub Copilot Tests ausführen, Fehler diagnostizieren und Korrekturen in mehreren Dateien in einer Sitzung anwenden möchten.
Zusammen schließen diese Tools den Komponententestworkflow ab. Die Chat-Ansicht, der Plan-Agent und der Agent generieren die ersten Tests; Ghost-Text füllt zusätzliche Testabdeckung auf; und die Funktionen zur Behebung von Testfehlern sorgen dafür, dass die Testsuite auch bei Weiterentwicklung Ihres Codes fehlerfrei bleibt.