Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Növelheti a kódminőség iránti bizalmat, és javíthatja a tesztelési lefedettséget a .NET-hez készült GitHub Copilot-tesztekkel végzett egységtesztek létrehozásával és futtatásával.
Bár a Copilot képes egységteszteket létrehozni, a Visual Studióban a GitHub Copilot .NET-alapú tesztelésével további tesztelési képességeket kaphat, beleértve a következőket:
- Az egységtesztek egy külön projektben jönnek létre a megoldáson belül.
- A Copilot determinisztikusan, a C#-fordítóban és a nyelvi szemantikában alapuló teszteket hoz létre, így az állítások és a peremes esetek kiszámíthatók és típusbiztosak.
- GitHub Copilot a tesztgenerálást követően hozza létre az egységteszteket. Ha vannak hibák, a .NET-hez készült GitHub Copilot egységtesztelési képessége megpróbálja azonosítani és kijavítani a hibákat, majd újrafuttatja a teszteket.
- A GitHub Copilot-teszt a Test Explorerrel futtatja a teszteket.
A .NET-hez készült GitHub Copilot-tesztelés csak az MSTest, az NUnit és az xUnit keretrendszer használatával hoz létre teszteket C#-projektekhez. Ha a megoldás már rendelkezik egységtesztekkel az NUnitban vagy az xUnitban, a .NET-hez készült GitHub Copilot-tesztelés új teszteket hoz létre ugyanabban az egységtesztelési keretrendszerben. Ha a megoldásban nincsenek egységtesztek, a rendszer új teszteket hoz létre az MSTest használatával.
Előfeltételek
Az első lépésekhez a következőkre van szüksége:
- Visual Studio 2026 18.3-os vagy újabb verzió
- C# projekt
- Bejelentkezés a Visual Studióba fizetősCopilot-előfizetéssel rendelkező GitHub-fiókkal
Megjegyzés:
A .NET-hez készült GitHub Copilot-teszteléshez fizetős GitHub Copilot-előfizetés szükséges (egyéni, üzleti vagy vállalati). Az ingyenes Copilot-előfizetések nem támogatottak.
Az egységtesztelés bemutatása: Egységteszt alapjai.
A GitHub Copilot tesztelésének megkezdésének módjai
A .NET-hez készült GitHub Copilot-tesztelés többféleképpen is elindítható:
- A Copilot Chat ablakában írja be
@Test, majd egy célt vagy kérdést. - A szerkesztőben kattintson a jobb gombbal a helyi menü megnyitásához, és válassza a Copilot Actions>Generate Tests lehetőséget.
- Válassza ki egy új Copilot-csevegési szálban a Copilot Chat icebreaker javaslatainak Egységtesztek írása lehetőségét.
Megjegyzés:
A helyi menü és az icebreaker opciói automatikusan az @Test ügynökhöz irányítanak, ha az IDE-ben a fókusz a C# kódra irányul. Nem C#-projektek esetén ezek a beállítások inkább egy általános Copilot-kérést használnak.
Parancssori szintaxis
A GitHub Copilot-tesztelés két kérési módszert támogat: strukturált szintaxist és szabadkézi utasításokat.
Strukturált szintaxis
@Test #<target> A szintaxis használatával teszteket hozhat létre adott kódelemekhez:
@Test #<target>
Ahol #<target> lehet:
- Tag, osztály, fájl, projekt vagy megoldás
- Egy git diff az aktuális módosítások teszteléséhez (
#git_changes) - Több azonos típusú bemenet (például több osztály vagy több fájl)
Megjegyzés:
A vegyes beviteli típusok nem támogatottak. Nem kombinálhat például egy fájlt és egy projektet ugyanabban a bemenetben.
Példák:
-
@Test #BankAccount— Tesztek létrehozása a BankAccount osztályhoz -
@Test #git_changes– Tesztek létrehozása az aktuális nem véglegesített módosításokhoz -
@Test #MyProject— Tesztek létrehozása az összes kódhoz a MyProjectben
Szabadkéűs kérések
Természetes nyelv használatával írja le, hogy mit szeretne tesztelni:
@Test <your prompt>
Példák:
| Haladéktalan | Description |
|---|---|
@Test class Foo |
Tesztek létrehozása egy adott osztályhoz |
@Test generate tests for the core logic in my #solution |
A kódbázis meghatározott területeinek megcélzása |
@Test write unit tests for my current changes |
Tesztek létrehozása a nem véglegesített git-módosításokhoz |
@Test fix my failing tests |
Kérje meg a Copilototot, hogy javítsa ki a sikertelen teszteket |
@Test class Bar, targeting 80% code coverage |
Lefedettségi cél megadása |
@Test use xUnit with FluentAssertions |
Tesztelési keretrendszerek és konvenciók megadása |
Jótanács
A tesztelési keretrendszerekkel, a mock könyvtárakkal, az érvényesítési stílusokkal és a tesztelési konvenciókkal kapcsolatos konkrét utasításokat a szabad szöveges utasításokban adhat meg.
További parancsok
A GitHub Copilot-teszt parancsokat biztosít a súgóhoz és a beállítások kezeléséhez:
| Command | Description |
|---|---|
@Test /help |
A súgó üzenetének megjelenítése elérhető parancsokkal és szintaxissal |
@Test /clear-preferences |
Tárolt felhasználói beállítások törlése, beleértve a hozzájárulási beállításokat is |
Tesztek létrehozása és futtatása
Nyisson meg egy meglévő C#-projektet, amely új teszteket igényel.
Ha nem rendelkezik meglévő projekttel, létrehozhat egy új projektet, majd a Bank mintaalkalmazás kódjával kísérletezhet az egységteszteléssel. Másolja a kezdő mintakódot a .NET egységtesztek létrehozása és futtatása dokumentumból
Program.cs.-ba/ből.Készítse el a projektet.
A folyamat egyszerűsítése érdekében győződjön meg arról, hogy a projekt hibák nélkül épül fel.
A Visual Studióban válassza a GitHub Copilot-csevegés megtekintése lehetőséget>.
A GitHub Copilot tesztelésének elindításához használja a parancssori módszerek bármelyikét.
A Bank mintaalkalmazáshoz használja az alábbi lehetőségek egyikét:
- Strukturált:
@Test #BankAccount - Szabadkézi:
@Test generate comprehensive tests for the BankAccount class
Megjegyzés:
A parancs megadásakor a Kérdés módban vagy az
@TestÜgynök módban is lehet. Az eredmények nem különböznek.A Teszt parancs a következőképpen jelenik meg a csevegésben, ami azt jelzi, hogy a parancs felismerve van.
- Strukturált:
A Csevegés ablakban válassza a Küldés lehetőséget.
A .NET-hez készült GitHub Copilot-tesztelés iteratív folyamatot kezdeményez a kód elemzéséhez, új projekt létrehozásához az egységtesztekhez, tesztek generálása, a tesztek létrehozása és futtatása.
A tesztlétrehozás egy hosszú ideig futó folyamat. A cél hatókörétől függően (fájl, projekt, megoldás stb.) eltarthat egy ideig.
Egységtesztek létrehozásakor a tesztek egy külön tesztprojektben jelennek meg a megoldásban.
A Test Explorer megjeleníti az eredményeket. Ha a GitHub Copilot-tesztelés nem nyitja meg automatikusan a Test Explorert, válassza a Test>Test Explorer lehetőséget.
Ezen a ponton manuálisan használhatja a Tesztböngészőt a tesztek futtatásához, vagy cseveghet a Copilottal a teszteredményekről. A Sikertelen tesztek hibakereséséhez a Copilotot is használhatja. További információ: Hibakeresési egységtesztek.