Estendere i test con testo fantasma e correggere i test non superati

Completato

Dopo che il progetto di test contiene alcuni test case, GitHub Copilot consente di estendere la copertura e risolvere gli errori senza lasciare Visual Studio Code. I suggerimenti di testo fantasma aggiungono altri test case al file in fase di modifica, mentre Esplora test e il comando barra /fixTestFailure consentono di diagnosticare e correggere i test non superati. Insieme, queste funzionalità chiudono il ciclo nel flusso di lavoro di unit test avviato nella visualizzazione Chat.

Estendere la copertura dei test con suggerimenti di testo fantasma

Il testo fantasma è il completamento del codice inline visualizzato durante la digitazione nell'editor. Quando un file di test contiene già alcuni test case, GitHub Copilot usa i modelli esistenti per suggerire test case simili per altri scenari. Questo è il modo più rapido per estendere la copertura dopo che i test iniziali sono stati eseguiti.

Per estendere un file di test con testo fantasma:

  1. Aprire un file di test contenente almeno uno o due test case completi.

  2. Posizionare il cursore alla fine dell'ultimo test case e premere INVIO per avviare una nuova riga.

  3. Iniziare a digitare un nuovo metodo di test o scrivere un commento descrittivo, // Test that ProcessOrder throws when the order total is negativead esempio .

    GitHub Copilot visualizza un suggerimento di testo fantasma che completa il metodo di test in base al codice circostante, alle importazioni e ai modelli di test esistenti.

  4. Premere TAB per accettare il suggerimento oppure premere ESC per ignorarlo.

  5. Perfezionare il suggerimento accettato in base alle esigenze. È possibile continuare a digitare per estendere il test oppure attivare il suggerimento di testo fantasma successivo premendo INVIO.

Il testo fantasma funziona meglio quando:

  • Il file di test mostra già lo schema che vuoi che GitHub Copilot segua (ad esempio, la struttura Arrange-Act-Assert o un attributo di test parametrizzato).
  • Il metodo sottoposto a test è richiamato nel file tramite una direttiva using o uno spazio dei nomi importato.
  • Il commento indica chiaramente lo scenario da testare.

Tip

Usa il testo segnaposto per aggiungere rapidamente casi marginali a una classe di test esistente. Per operazioni più sostanziali, ad esempio la creazione di una classe di test completamente nuova, tornare alla visualizzazione Chat e usare gli agenti Ask, Plan o Agent.

Correzione dei test non superati da Esplora test

Quando un test fallisce, Esplora test offre un punto di accesso a GitHub Copilot con un solo clic.

  1. Eseguire i test da Esplora test o dal pulsante di riproduzione verde accanto a un metodo di test.

  2. In Test Explorer, passa il puntatore del mouse su un test non riuscito.

  3. Selezionare il pulsante Correggi errore test (icona sparkle).

    GitHub Copilot apre una sessione di chat, collega il test non riuscito e il relativo output come contesto e propone una correzione.

  4. Esaminare la correzione proposta.

    Il suggerimento può aggiornare il codice dell'applicazione, il codice di test o entrambi, a seconda della causa dell'errore.

  5. Applicare o rimuovere il suggerimento.

    Usare Keep per applicare le modifiche suggerite oppure usare Annulla per rimuoverle. Eseguire di nuovo il test per confermare la correzione.

Correzione dei test non superati con /fixTestFailure

È anche possibile avviare il flusso di lavoro di correzione dalla visualizzazione Chat, utile quando si vuole collegare un contesto aggiuntivo o quando si utilizzano più test non superati contemporaneamente.

  1. Aprire la visualizzazione Chat.

  2. Immettere il /fixTestFailure comando slash.

  3. Facoltativamente, allegare contesto aggiuntivo, ad esempio file di origine correlati o output del terminale recente.

  4. Seguire i suggerimenti di GitHub Copilot per correggere il test non superato, quindi eseguire di nuovo il test per confermare la correzione.

Consentire all'agente di monitorare e correggere automaticamente gli errori

Quando si usa Agent per eseguire test, monitora l'output del test, identifica gli errori e tenta automaticamente di correggere ed eseguire nuovamente i test. Ciò è utile quando si esegue lo scaffolding di un nuovo progetto di test o si apportano modifiche di grandi dimensioni che influiscono su più test contemporaneamente.

Per usare l'agente per la manutenzione automatica dei test:

  1. Aprire la vista Chat e selezionare Agent dal selettore agente.

  2. Fornire un prompt che includa l'esecuzione dei test, ad esempio: Run the xUnit tests in the Calculator.Tests project. If any tests fail, propose and apply fixes, then rerun the tests until they pass.

  3. Confermare o rifiutare le chiamate dello strumento e i comandi del terminale suggeriti dall'agente.

  4. Esaminare le modifiche applicate all'agente prima di accettarle.

Scegli lo strumento giusto per il lavoro

Usare le indicazioni seguenti per decidere quale funzionalità usare:

  • Il testo fantasma è ideale quando si desidera aggiungere altri test case a un file di test esistente che mostra già il modello.
  • Correggi errore del test in Esplora test è la soluzione ideale quando fallisce un singolo test e vuoi una correzione rapida e mirata.
  • /fixTestFailure nella vista chat è la scelta migliore quando si intende aggiungere ulteriore contesto o risolvere più errori.
  • Esecuzioni di test guidate daAgent sono ottimali quando si desidera GitHub Copilot eseguire test, diagnosticare gli errori e applicare correzioni tra più file in una sessione.

Insieme, questi strumenti completano il flusso di lavoro di unit test. La vista chat, l'agente di piano e l'agente generano i test iniziali; il testo fantasma aggiunge ulteriore copertura; le funzionalità di di correzione degli errori di test mantengono aggiornata la suite man mano che il codice si evolve.