Granska Visual Studio Code stöd för enhetstestning
Innan du kan generera enhetstester med GitHub Copilot behöver projektet ett fungerande testramverk och ett sätt att köra tester i Visual Studio Code. Visual Studio Code tillhandahåller .NET SDK och C# Dev Kit-tillägget den miljö som är värd för dina enhetstester, medan GitHub Copilot fokuserar på att generera och förfina testkoden. Att förstå den underliggande miljön gör GitHub Copilot arbetsflöde mycket enklare att följa.
Den här lektionen undersöker de Visual Studio Code funktioner och C#-verktyg som stöder enhetstestning. Senare enheter fokuserar på hur GitHub Copilot genererar och underhåller testkoden som körs i den här miljön.
Visual Studio Code stöd för enhetstester
Om du vill skapa och köra C#-enhetstester i Visual Studio Code behöver du följande resurser:
- .NET 8.0 SDK eller senare.
- C# Dev Kit-tillägget för Visual Studio Code.
- Ett testramverkspaket har lagts till i projektet.
C# Dev Kit-stöd för enhetstester
Tillägget C# Dev Kit innehåller de testfunktioner som du använder i den här modulen:
- Test Explorer: En trädvy som visar alla testfall på din arbetsyta. Du kan öppna Test Explorer genom att välja bägareikonen i aktivitetsfältet.
- Kör/felsöka testfall: Gröna uppspelningsknappar visas i redigeraren bredvid varje testklass och metod. Högerklicka på en uppspelningsknapp om du vill se fler alternativ.
- Visa testresultat: När ett test har körts återspeglas resultatet i redigeringsprogrammets dekorationer och i Test Explorer. Om du väljer en länk i en stackspårning navigerar du till källplatsen.
-
Testkommandon: Kommandon som
Test: Run All Testsär tillgängliga i kommandopaletten. Sök efterTest:för att se hela listan. -
Testinställningar: Inställningar som styr testidentifiering och körningsbeteende är tillgängliga i inställningsredigeraren. Sök efter
Testingför att se de tillgängliga alternativen.
C# Dev Kit stöder följande testramverk:
- xUnit
- NUnit
- MSTest
Skapa ett testprojekt med hjälp av kommandopaletten
Kommandopaletten i Visual Studio Code är det enklaste sättet att skapa ett testprojekt som använder ett ramverk som stöds. Du kan öppna kommandopaletten på följande sätt:
- Tryck på tangenterna Ctrl + Shift + P (Windows/c4> Linux) eller Cmd + Shift + P (macOS).
- Öppna menyn Visa och välj sedan Kommandopalett.
- Öppna vyn Prieskumník riešení, högerklicka på lösningsmappen och välj sedan Nyt projekt. Det här alternativet öppnar kommandopaletten med kommandot .NET: Nytt projekt... redan markerat.
Följande avsnitt visar hur du skapar ett testprojekt för varje ramverk som stöds.
xUnit
Öppna kommandopaletten och välj .NET: Ny Project... väljer du xUnit Test Project och anger sedan ett namn och en plats för den nya project. Det här kommandot skapar ett projekt som använder xUnit som testbibliotek och konfigurerar testkören genom att lägga till följande <PackageReference /> element i projektfilen:
Microsoft.NET.Test.SdkxUnitxunit.runner.visualstudiocoverlet.collector
Från den integrerade terminalen kan du lägga till en referens från testprojektet till projektet som testas:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
NUnit
Öppna kommandopaletten och välj .NET: Ny Project... väljer du NUnit3 Test Project och anger sedan ett namn och en plats för den nya project. Det här kommandot skapar ett projekt som använder NUnit som testbibliotek och lägger till följande <PackageReference /> element i projektfilen:
Microsoft.NET.Test.SdkNUnitNUnit3TestAdapter
Lägg till en referens till projektet som testas från terminalen:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
MSTest
Öppna kommandopaletten och välj .NET: Ny Project... väljer du MSTest Test Project och anger sedan ett namn och en plats för den nya project. Det här kommandot lägger till följande <PackageReference /> element i projektfilen:
Microsoft.NET.Test.SdkMSTest.TestAdapterMSTest.TestFrameworkcoverlet.collector
Lägg till en referens till projektet som testas från terminalen:
dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]
Köra och hantera enhetstester i Visual Studio Code
När ett testprojekt finns ger Visual Studio Code och C# Dev Kit flera sätt att köra och hantera tester:
- Kör/felsök från redigeraren: Välj den gröna uppspelningsknappen bredvid en klass eller metod för att köra målet. Högerklicka på uppspelningsknappen för att se alternativ som Kör test och Felsöka test.
- Testutforskaren: Kör eller felsöka enskilda tester, grupper eller hela sviten från trädvyn. Testresultat, inklusive ikoner och varaktigheter för pass/fail, visas bredvid varje objekt.
- Visa testresultat: Redigeringsdekorationer och Testutforskaren återspeglar båda det aktuella tillståndet för varje test efter en körning. Välj länkar i stackspår för att hoppa till raden där felet uppstår.
-
Testkommandon: Använd kommandon som
Test: Run All Tests,Test: Debug Failed TestsochTest: Show Outputfrån kommandopaletten. -
Testinställningar: Sök efter
Testingi inställningsredigeraren för att konfigurera funktioner som automatisk körning vid sparning eller formatering av testresultat.
Arbetsflödet för enhetstestning med GitHub Copilot
När du kombinerar Visual Studio Code med GitHub Copilot delas enhetstestningsprocessen upp i tre steg:
- Konfigurera miljön: Använd Visual Studio Code, .NET SDK och C# Dev Kit för att skapa ett testprojekt och referera till projektet som testas. Du har slutfört det här steget i den här lektionen.
- Generera testkod: Använd GitHub Copilot i chattvyn för att generera enhetstester för programkoden. Nästa avsnitt behandlar det här stadiet.
- Kör och underhålla tester: Använd Test Explorer och C# Dev Kit för att köra tester och använd sedan GitHub Copilot för att utöka täckningen och åtgärda misslyckade tester.
De återstående enheterna fokuserar på de GitHub Copilot verktyg som stöder steg 2 och 3.