Undersøg Visual Studio Code-understøttelse af enhedstest

Fuldført

Før du kan generere enhedstests med GitHub Copilot, har dit projekt brug for et fungerende testframework og en måde at køre tests inde i Visual Studio Code. Visual Studio Code, .NET SDK'en og C# Dev Kit-udvidelsen leverer miljøet, der hoster dine enhedstests, mens GitHub Copilot fokuserer på at generere og forfine testkoden. At forstå det underliggende miljø gør GitHub Copilot-arbejdsgangen meget nemmere at følge.

Denne enhed undersøger Visual Studio Code-funktionerne og C#-værktøjerne, der understøtter enhedstest. Senere enheder fokuserer på, hvordan GitHub Copilot genererer og vedligeholder den testkode, der kører i dette miljø.

Visual Studio Code-understøttelse af enhedstests

For at oprette og køre C#-enhedstests i Visual Studio Code har du brug for følgende ressourcer:

  • .NET 8.0 SDK eller nyere.
  • C# Dev Kit-udvidelsen til Visual Studio Code.
  • En teststrukturpakke, der er føjet til dit projekt.

Understøttelse af C# Dev Kit til enhedstests

C# Dev Kit-udvidelsen giver de testfunktioner, du bruger gennem hele dette modul:

  • Test Explorer: En trævisning, der viser alle testcases i dit arbejdsområde. Du kan åbne Test Explorer ved at vælge bægerikonet på aktivitetslinjen.
  • Kør/fejlfejl testcases: Grønne play-knapper vises i editoren ved siden af hver testklasse og metode. Højreklik på en afspil-knap for at se flere muligheder.
  • Se testresultater: Efter en testkørsel vises resultatet i editorens dekorationer og i Test Explorer. Ved at vælge et link i en stack trace navigerer man til kildelokationen.
  • Testkommandoer: Kommandoer som Test: Run All Tests lignende findes i Command Palette. Søg efter Test: for at se hele listen.
  • Testindstillinger: Indstillinger, der styrer testopdagelse og kørselsadfærd, er tilgængelige i indstillingseditoren. Søg efter Testing for at se de tilgængelige muligheder.

C# Dev Kit understøtter følgende testrammer:

  • xUnit
  • NUnit
  • MSTest

Opret et testprojekt ved hjælp af Command Palette

Command Palette i Visual Studio Code giver den nemmeste måde at oprette et testprojekt, der bruger et understøttet framework. Du kan åbne kommandopaletten på følgende måder:

  • Tryk på Ctrl + Shift + P tasterne (Windows/Linux) eller Cmd + Shift + P (macOS).
  • Åbn Visningsmenuen , og vælg derefter Command Palette.
  • Åbn Løsningsoversigt-visningen, højreklik på løsningsmappen, og vælg derefter Ny Project. Denne mulighed åbner Command Palette med .NET: New Project... kommando allerede valgt.

De følgende afsnit viser, hvordan man opretter et testprojekt for hvert understøttet framework.

xUnit

Åbn Command Palette og vælg .NET: Ny Project... vælg xUnit Test Project, og angiv derefter navn og placering for den nye project. Denne kommando opretter et projekt, der bruger xUnit som testbibliotek og konfigurerer testrunneren ved at tilføje følgende <PackageReference /> elementer til projektfilen:

  • Microsoft.NET.Test.Sdk
  • xUnit
  • xunit.runner.visualstudio
  • coverlet.collector

Fra den integrerede terminal kan du tilføje en reference fra testprojektet til det projekt, der testes:

dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]

NUnit

Åbn Command Palette og vælg .NET: Ny Project... vælg NUnit3 Test Project, og angiv derefter navn og placering for den nye project. Denne kommando opretter et projekt, der bruger NUnit som testbibliotek og tilføjer følgende <PackageReference /> elementer til projektfilen:

  • Microsoft.NET.Test.Sdk
  • NUnit
  • NUnit3TestAdapter

Tilføj en reference til det projekt, der testes, fra terminalen:

dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]

MSTest

Åbn Command Palette og vælg .NET: Ny Project... vælg MSTest Test Project, og angiv derefter navn og placering for den nye project. Denne kommando tilføjer følgende <PackageReference /> elementer til projektfilen:

  • Microsoft.NET.Test.Sdk
  • MSTest.TestAdapter
  • MSTest.TestFramework
  • coverlet.collector

Tilføj en reference til det projekt, der testes, fra terminalen:

dotnet add [location of your test csproj file] reference [location of the csproj file for project to be tested]

Kør og administrer enhedstests i Visual Studio Code

Når et testprojekt eksisterer, giver Visual Studio Code og C# Dev Kit dig flere måder at køre og administrere tests på:

  • Kør/Debug fra editoren: Vælg den grønne play-knap ved siden af en klasse eller metode for at køre det mål. Højreklik på play-knappen for at se muligheder som Kør Test og Debug Test.
  • Testudforsker: Kør eller fejlfind individuelle tests, grupper eller hele suiten fra trævisningen. Testresultater, inklusive bestået/ikke-bestået-ikoner og varigheder, vises ved siden af hvert element.
  • Se testresultater: Editor-dekorationer og Test Explorer afspejler begge den aktuelle tilstand af hver test efter en kørsel. Vælg links i stack traces for at hoppe til den fejlende linje.
  • Testkommandoer: Brug kommandoer som Test: Run All Tests, Test: Debug Failed Tests, og Test: Show Output fra Command Palette.
  • Testindstillinger: Søg i Testing indstillingseditoren for at konfigurere adfærd som auto-run ved gemning eller testresultatformatering.

Enhedstest-arbejdsgangen med GitHub Copilot

Når du kombinerer Visual Studio Code med GitHub Copilot, opdeles enhedstestprocessen i tre faser:

  1. Opsæt miljøet: Brug Visual Studio Code, .NET SDK og C# Dev Kit til at oprette et testprojekt og referere til det projekt, der testes. Du gennemførte denne fase i denne afdeling.
  2. Generer testkode: Brug GitHub Copilot i chatvisningen til at generere enhedstests for din applikationskode. De næste enheder dækker denne fase.
  3. Kør og vedligehold tests: Brug Test Explorer og C# Dev Kit til at køre tests, og brug derefter GitHub Copilot til at udvide dækningen og rette fejlende tests.

De resterende enheder fokuserer på GitHub Copilot-værktøjerne, der understøtter trin 2 og 3.