Rozšíření testů pomocí stínových textů a oprava neúspěšných testů
Jakmile testovací projekt obsahuje několik testovacích případů, GitHub Copilot vám můžou pomoct rozšířit pokrytí a vyřešit selhání bez opuštění Visual Studio Code. Návrhy v šedém textu přidávají do souboru, který upravujete, další testovací případy, zatímco Průzkumník testů a příkaz s lomítkem /fixTestFailure vám pomáhají diagnostikovat a opravovat selhávající testy. Tyto funkce společně zavírají smyčku pracovního postupu testování jednotek, který jste začali v zobrazení Chat.
Rozšíření pokrytí testů návrhy stínového textu
Ghost text je průběžné doplňování kódu, které se zobrazuje při psaní v editoru. Pokud testovací soubor již obsahuje několik testovacích případů, GitHub Copilot použije existující vzory k návrhu podobných testovacích případů pro další scénáře. Jedná se o nejrychlejší způsob, jak rozšířit pokrytí, jakmile budou vaše počáteční testy zavedeny.
Chcete-li rozšířit testovací soubor pomocí ghost textu:
Otevřete testovací soubor, který obsahuje aspoň jeden nebo dva úplné testovací případy.
Umístěte kurzor na konec posledního testovacího případu a stisknutím klávesy Enter začněte nový řádek.
Začněte psát novou testovací metodu nebo napsat popisný komentář, například
// Test that ProcessOrder throws when the order total is negative.GitHub Copilot zobrazí návrh stínového textu, který dokončí testovací metodu na základě okolního kódu, importů a existujících vzorů testů.
Pokud chcete návrh přijmout, stiskněte klávesu Tab nebo ho zavřete stisknutím klávesy Esc .
Podle potřeby zpřesněte přijatý návrh. Můžete pokračovat v psaní a tím test prodloužit, nebo můžete stisknutím klávesy Enter vyvolat další návrh fantomového textu.
Ghost text funguje nejlépe, když:
- Testovací soubor už obsahuje vzor, kterým se má GitHub Copilot řídit (například strukturu Arrange-Act-Assert nebo atribut pro parametrizovaný test).
- Na testovanou metodu se v souboru odkazuje prostřednictvím direktivy
usingnebo importovaného oboru názvů. - Váš komentář jasně uvádí scénář, který chcete otestovat.
Tip
Pomocí zástupného textu můžete rychle přidat okrajové případy do existující testovací třídy. Pokud chcete mnohem důležitější práci, například vytvoření zcela nové testovací třídy, vraťte se do zobrazení chatu a použijte agenty Ask, Plan nebo Agent.
Oprava neúspěšných testů z Průzkumníka testů
Když test selže, Průzkumník testů poskytuje rychlý přístup do GitHub Copilot jediným kliknutím.
Testy spusťte z Průzkumníka testů nebo ze zeleného tlačítka přehrát vedle testovací metody.
V Průzkumníku testů najeďte myší na neúspěšný test.
Vyberte tlačítko Opravit selhání testu (ikona sparkle).
GitHub Copilot otevře chatovací relaci, připojí neúspěšný test a jeho výstup jako kontext a navrhne opravu.
Zkontrolujte navrženou opravu.
Návrh může aktualizovat kód aplikace, testovací kód nebo obojí v závislosti na příčině selhání.
Použijte nebo zahoďte návrh.
Pomocí funkce Zachovat můžete použít navrhované změny nebo je můžete zrušit pomocí funkce Zpět . Znovu spusťte test a potvrďte opravu.
Oprava neúspěšných testů pomocí /fixTestFailure
Postup opravy můžete spustit také v zobrazení Chat, což je užitečné, když chcete přidat další kontext nebo když řešíte několik neúspěšných testů najednou.
Otevřete zobrazení chatu.
Zadejte příkaz lomítko
/fixTestFailure.Volitelně můžete připojit další kontext, například související zdrojové soubory nebo nedávný výstup terminálu.
Postupujte podle návrhů GitHub Copilot, abyste opravili neúspěšný test a pak test znovu spusťte a potvrďte opravu.
Umožněte agentovi automaticky monitorovat a opravovat selhání
Když pomocí agenta spustíte testy, monitoruje výstup testu, identifikuje selhání a automaticky se pokusí opravit a znovu spustit testy. To je užitečné při generování nového testovacího projektu nebo provádění velkých změn, které ovlivňují mnoho testů najednou.
Chcete-li použít Agenta pro automatickou údržbu testů:
Otevřete zobrazení chatu a v nástroji pro výběr agenta vyberte Agent .
Zadejte výzvu, která zahrnuje spuštění testů, například:
Run the xUnit tests in the Calculator.Tests project. If any tests fail, propose and apply fixes, then rerun the tests until they pass.Potvrďte nebo odmítněte vyvolání nástroje a příkazy terminálu, které agent navrhuje.
Před přijetím změn zkontrolujte změny, které Agent provedl.
Výběr správného nástroje pro úlohu
Při rozhodování o tom, kterou funkci použít, použijte následující doprovodné materiály:
- Ghost text je nejlepší, když chcete přidat další testovací případy do existujícího testovacího souboru, který už ukazuje vzor.
- Oprava selhání testu v Průzkumníku testů je nejlepší, když selže jeden test a chcete rychle zaměřenou opravu.
-
/fixTestFailurev zobrazení Chat se nejlépe hodí, když chcete doplnit další kontext nebo řešit několik neúspěšných pokusů. - Agentem řízené testovací běhy jsou nejlepší, když chcete, aby GitHub Copilot spouštět testy, diagnostikovat chyby a používat opravy napříč více soubory v jedné relaci.
Společně tyto nástroje dokončí pracovní postup testování jednotek. Zobrazení chatu, agent plánu a agent vygenerují počáteční testy; ghost text vyplní další pokrytí; funkce fix-test-failure udržují sadu zelenou, jak se váš kód vyvíjí.