Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aumentare la fiducia nella qualità del codice e migliorare la copertura dei test creando ed eseguendo unit test usando i test di GitHub Copilot per .NET.
Anche se Copilot può generare unit test, è possibile ottenere funzionalità di test aggiuntive usando i test di GitHub Copilot per .NET in Visual Studio, tra cui:
- Gli unit test vengono generati in un progetto separato all'interno della soluzione.
- Copilot genera test in modo deterministico, fondati sulla semantica del compilatore e del linguaggio C#, quindi le asserzioni e i casi limite sono prevedibili e sicuri per i tipi.
- I test di GitHub Copilot compilano gli unit test dopo la generazione di test. In caso di errori, la funzionalità di unit test in GitHub Copilot per .NET tenta di identificare e correggere gli errori e quindi riesegua i test.
- I test di GitHub Copilot eseguono i test usando Test Explorer.
Il test di GitHub Copilot per .NET genera test per i progetti C# solo usando i framework MSTest, NUnit e xUnit. Se la soluzione include già unit test in NUnit o xUnit, i test di GitHub Copilot per .NET generano nuovi test nello stesso framework di unit test. Se nella soluzione non sono presenti unit test, i nuovi test vengono generati usando MSTest.
Prerequisiti
Per iniziare, è necessario:
- Visual Studio 2026 versione 18.3 o successiva
- Progetto C#
- Accedere a Visual Studio usando un account GitHub con una sottoscrizione di Copilot a pagamento
Annotazioni
Il test di GitHub Copilot per .NET richiede una sottoscrizione di GitHub Copilot a pagamento (singola, aziendale o aziendale). Le sottoscrizioni copilot gratuite non sono supportate.
Per un'introduzione agli unit test, vedere Nozioni di base sugli unit test.
Modi per avviare i test di GitHub Copilot
È possibile avviare i test di GitHub Copilot per .NET in diversi modi:
- Da Copilot Chat digitare
@Testseguito da una destinazione o un prompt nella finestra Chat. - Nell'editor fare clic con il pulsante destro del mouse per aprire il menu di scelta rapida e scegliere Azioni copilote>Genera test.
- In un nuovo thread di Copilot Chat, seleziona Scrivi test unitari dai suggerimenti per il rompighiaccio di Copilot Chat.
Annotazioni
Il menu contestuale e le opzioni icebreaker instradano automaticamente all'agente @Test quando nell'IDE il focus è sul codice C#. Per i progetti non C#, queste opzioni usano invece un prompt copilot generico.
Sintassi prompt
I test di GitHub Copilot supportano due metodi di richiesta: sintassi strutturata e richieste a formato libero.
Sintassi strutturata
Usare la @Test #<target> sintassi per generare test per elementi di codice specifici:
@Test #<target>
Dove #<target> può essere:
- Membro, classe, file, progetto o soluzione
- Un Git diff per testare le modifiche correnti (
#git_changes) - Più input dello stesso tipo (ad esempio, più classi o più file)
Annotazioni
I tipi di input misti non sono supportati. Ad esempio, non è possibile combinare un file e un progetto nello stesso prompt.
Esempi:
-
@Test #BankAccount— Generare test per la classe BankAccount -
@Test #git_changes— Generare test per le modifiche correnti di cui non è stato eseguito il commit -
@Test #MyProject— Generare test per tutto il codice in MyProject
Richieste libere
Usare il linguaggio naturale per descrivere gli elementi da testare:
@Test <your prompt>
Esempi:
| Rapido | Description |
|---|---|
@Test class Foo |
Generare test per una classe specifica |
@Test generate tests for the core logic in my #solution |
Specificare le aree specifiche della codebase |
@Test write unit tests for my current changes |
Generare test per le modifiche Git di cui non è stato eseguito il commit |
@Test fix my failing tests |
Chiedere a Copilot di correggere i test non superati |
@Test class Bar, targeting 80% code coverage |
Specificare una destinazione di copertura |
@Test use xUnit with FluentAssertions |
Specificare framework e convenzioni di test |
Suggerimento
È possibile fornire istruzioni specifiche sui framework di test, le librerie fittizie, gli stili di asserzione e le convenzioni di test nei prompt delle forme libere.
Comandi aggiuntivi
Il test di GitHub Copilot fornisce comandi per facilitare e gestire le preferenze:
| Command | Description |
|---|---|
@Test /help |
Visualizzare il messaggio della Guida con i comandi e la sintassi disponibili |
@Test /clear-preferences |
Cancellare le preferenze utente archiviate, incluse le impostazioni di consenso |
Generare ed eseguire test
Aprire un progetto C# esistente che richiede nuovi test.
Se non si dispone di un progetto esistente, è possibile creare un nuovo progetto e quindi usare il codice dell'applicazione di esempio Bank per sperimentare gli unit test. Copiare il codice di esempio iniziale da Creare ed eseguire unit test per .NET in
Program.cs.Costruisci il progetto.
Assicurarsi che il progetto venga compilato senza errori per semplificare il processo.
In Visual Studio, selezionare Visualizza > chat di GitHub Copilot.
Usare uno dei metodi di richiesta per avviare i test di GitHub Copilot.
Per l'applicazione di esempio Bank, usare una delle opzioni seguenti:
- Strutturato:
@Test #BankAccount - Freeform:
@Test generate comprehensive tests for the BankAccount class
Annotazioni
È possibile usare la modalità Ask o Agent quando si immette il
@Testcomando . I risultati non differiscono.Il comando Test viene visualizzato nella chat come indicato di seguito, a indicare che il comando è riconosciuto.
- Strutturato:
Nella finestra Chat selezionare Invia.
Il test di GitHub Copilot per .NET avvia un processo iterativo per l'analisi del codice, la creazione di un nuovo progetto per gli unit test, la generazione di test, la compilazione e l'esecuzione dei test.
La generazione di test è un processo a esecuzione prolungata. A seconda dell'ambito della destinazione (file, progetto, soluzione e così via) potrebbero essere necessari alcuni minuti.
Quando vengono generati unit test, i test vengono visualizzati in un progetto di test separato nella soluzione.
L'Esplora test mostra i risultati. Se Esplora test non viene aperto automaticamente dai test di GitHub Copilot, selezionare Esplora test>.
A questo punto, è possibile usare manualmente Esplora test per continuare a eseguire test o chattare con Copilot sui risultati dei test. È anche possibile usare Copilot per eseguire il debug di test non riusciti. Per altre informazioni, vedere Eseguire il debug di unit test.