Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Feljegyzés
Az előzetes funkciókat nem célszerű termelési környezetben használni, és előfordulhat, hogy korlátozott funkcionalitással rendelkeznek. Ezek a funkciók a hivatalos kiadás előtt érhetők el, hogy az ügyfelek korán megismerkedhessenek velük, és visszajelzést adhassanak róluk.
Az alkalmazások átfogó tesztelési terveinek elkészítése Power Platform időigényes lehet, különösen összetett forgatókönyvek esetén. Az AI-val támogatott szerzői eszközök, például GitHub Copilot jelentősen felgyorsíthatják ezt a folyamatot tesztsablonok létrehozásával, tesztesetek javaslatával és a sablonkód létrehozásának automatizálásával.
Ez az útmutató bemutatja, hogyan használható GitHub Copilot a Power Platform verziókövetési megoldásokkal a tesztmotor tesztterveinek hatékony létrehozásához.
Előfeltételek
Mielőtt elkezdené, győződjön meg arról, hogy rendelkezik:
- Visual Studio Telepített kód
- GitHub Copilot előfizetés
- GitHub Copilot Csevegési bővítmény a VS Code-hoz
- Power Platform CLI telepítve
- Forrásvezérelt Power Platform megoldás
A tesztszerzői környezet beállítása
A mesterséges intelligenciával támogatott tesztkészítés hatékonyságának maximalizálása érdekében kombinálja ezeket az eszközöket egy strukturált munkafolyamatban:
- Forrásfájlok lekérése
- Környezet vagy megoldás klónozása Power Platform a verziókövetésből
- Exportálja és csomagolja ki a megoldást Power Platform fájlokkal a pac solution export és a pac solution unpack használatával
- Git-adattár inicializálása a verziókövetéshez (ha még nem tette meg)
- Dedikált tesztmappa létrehozása a megoldástárban
- Nyissa meg a megoldás mappát a Visual Studio Kódban
Tesztkészítéshez használható GitHub Copilot
GitHub Copilot segíthet különböző tesztösszetevők létrehozásában a forrásvezérelt megoldás alapján. Így használhatja hatékonyan a képességeit:
Mintadokumentáció használata kontextusként
A Test Engine minták katalógusa gazdag referenciaanyagforrást GitHub Copilot biztosít. A Copilotnak a következőkkel segíthet a jobb minőségű tesztek létrehozásában:
- A samples.md fájl felvétele a munkaterületre
- Adott mintákra való hivatkozás a promptokban
- GitHub-mintaadattárakra mutató hivatkozások biztosítása
Például a következőket teheti:
- Nyissa meg az alkalmazáskódot és a samples.md fájlt a VS Code-ban
- Kérje meg a Copilotot, hogy hozzon létre teszteket "a ButtonClicker-mintához hasonlóan" vagy "a Dataverse mintából származó minták felhasználásával"
- Konkrét képességekre való hivatkozás a tesztelési igényeknek megfelelő mintákból
Ez a megközelítés segít a Copilotnak megérteni Power Platform a tesztmotor-mintákat, és pontosabb teszteket generálni.
Munka GitHub Copilot ügynök módban
Visual Studio A Code GitHub Copilot csevegése egy ügynök módot kínál, amely segíthet tesztek létrehozásában a megoldásfájlok alapján. Ez a mód lehetővé teszi a Copilot számára, hogy mélyebben hozzáférjen és megértse a projekt környezetét.
Az Ügynök mód használata teszt létrehozásához:
- A VS Code-ban nyissa meg a GitHub Copilot Csevegést (Ctrl+Shift+I)
- Válassza ki az Ügynököt a Copilot módválasztóból
- Készítsen részletes üzenetet a létrehozni kívánt tesztről
Példa a teszt létrehozására vonatkozó kérésekre
Próbálja meg az alábbihoz hasonló kéréseket használni a teszt generálásához:
Cél:
Hozzon létre egy átfogó tesztcsomagot egy vászonalapú alkalmazáshoz a Power Apps Button Clicker-minta alapján modellezett tesztmotor használatával.
Haladéktalan:
Hozzon létre egy tesztet a ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml számára a minta https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker használatával. Várt esetek, peremhálózati esetek és kivételesetek létrehozása. A tesztnek létre kell hoznia egy teszt YAML-fájlt, valamint Power Fx a config.json és a RunTest.ps1 tesztelési lépéseket a minta alapján, hogy futtathassam a tesztet.
Cél:
Készítsen részletes teszttervet egy modellvezérelt alkalmazáshoz, hogy biztosítsa az alapvető funkciók és az üzleti logika elvárt működését.
Haladéktalan:
Hozzon létre egy átfogó teszttervet a modellvezérelt alkalmazáshoz, amely a következő helyen található: ./SolutionPackage/src/Other/Solution.xml. A tesztnek ellenőriznie kell az űrlap betöltését, a rekord létrehozását és az üzleti szabályok végrehajtását. Hozza létre a teszt YAML-t, a Power Fx lépéseket és egy PowerShell-szkriptet a teszt futtatásához.
Cél:
Készítsen teszttervet az entitások számára Dataverse a CRUD-műveletek műveleteken keresztüli Power Fx ellenőrzéséhez.
Haladéktalan:
Készítsen átfogó teszttervet az intézményeim Dataverse számára. A tesztnek létrehozási, frissítési és törlési Power Fx műveleteket kell végrehajtania. Hozza létre a teszt YAML-t, a Power Fx lépéseket és egy PowerShell-szkriptet a teszt futtatásához.
A generált tesztkomponensek megértése
A GitHub Copilot teszt létrehozásakor általában a következő összetevőket hozza létre:
- YAML-tesztterv: Meghatározza a tesztstruktúrát, az alkalmazás URL-címét és a tesztelési lépéseket
- Power Fx tesztlépések: Tartalmazza a tesztlogikát kifejezések használatával Power Fx
- config.json: Tesztvégrehajtási paraméterek konfigurálása
- RunTest.ps1: PowerShell-szkript a teszt végrehajtásához
Példa: Generált tesztstruktúra
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
Ajánlott eljárások a mesterséges intelligenciával támogatott tesztkészítéshez
Vegye figyelembe a következő szakaszokat, hogy a legtöbbet hozza ki a GitHub Copilot tesztmotor-teszt létrehozásához.
Adjon meg egyértelmű kontextust a felszólításokban
Legyen konkrét, hogy mit szeretne tesztelni, és adjon meg hivatkozásokat a következőkre:
- A tesztelendő fájlok pontos száma
- Sablonként használható mintatesztek
- Konkrét tesztelési forgatókönyvek, amelyeket le szeretne fedni
- Hitelesítési vagy környezeti követelmények
Tesztmotor-minták használata környezethez
A samples.md dokumentáció katalogizálja az összes elérhető mintát a Test Engine adattárból, ami kiváló referenciaként szolgálhat a kérések GitHub Copilot létrehozásakor. Ha például egy vászonalapú alkalmazást gombokkal tesztel, hivatkozhat a Button Clicker mintára:
Haladéktalan:
Hozzon létre egy tesztet a vászonalapú alkalmazáshoz a ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml címen a ButtonClicker minta https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker használatával. A vizsgálatnak:
1. Ellenőrizze, hogy a számlálógombom növeli-e az értéket a képernyőn
2. Vizsgálati peremfeltételek (pl. maximális érték)
3. Tartalmazza az OnTestCaseStart és az OnTestCaseComplete életciklus-hookokat
4. Hozza létre a config.json megfelelő környezeti változókkal
Ez a megközelítés segít a Copilotnak megérteni a teszt szerkezetét, és pontosabb, kontextus szempontjából releváns teszteket generál bevált példák alapján.
Forrásvezérelt megoldások használata kontextusként
A Copilot akkor teljesít a legjobban, ha elemezni tudja a megoldás szerkezetét. A környezet biztosításához használja a megoldások Power Platform forrásvezérlőjét . Ez a környezet lehetővé teszi a Copilot számára, hogy:
- Az alkalmazás szerkezetének ismertetése
- Vezérlőelemek nevének és tulajdonságainak azonosítása
- Pontosabb tesztlépések létrehozása
- Hivatkozás a megfelelő fájlelérési utakra
Generált tesztek áttekintése és finomítása
Bár a mesterséges intelligencia által generált tesztek kiváló kiindulópontot jelentenek, mindig:
- Ellenőrizze, hogy a vezérlőhivatkozások megfelelnek az alkalmazásnak
- Helyességi feltételek hozzáadása az üzletileg kritikus funkciókhoz
- Győződjön meg arról, hogy a peremügyeket megfelelően kezelik
- Hitelesítési konfiguráció ellenőrzése
Kombinálja a kézi szakértelemmel
Összetett tesztelési forgatókönyvek esetén használja GitHub Copilot a következőt:
- A tesztkeret és a struktúra létrehozása
- Szabványos érvényesítési minták létrehozása
- Peremhálózati esetek javaslata
Ezután bővítse tartományi szakértelmével a következőkhöz:
- Vállalkozásspecifikus érvényesítési szabályok
- Környezetvédelmi megfontolások
- Speciális vizsgálati adatok
Gyakori tesztgenerálási minták
Ez a szakasz néhány gyakori tesztgenerálási mintát tartalmaz:
Vászonalapú alkalmazások tesztelése
Vászonalapú alkalmazások esetén használjon olyan kéréseket, amelyek a App.fx.yaml forrásvezérelt megoldásban lévő fájlra hivatkoznak:
Haladéktalan:
Hozzon létre egy tesztet a vászonalapú alkalmazáshoz a ./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml helyen, amely ellenőrzi a költségbenyújtási folyamatot. A tesztnek ki kell töltenie a költségmezőket, el kell küldenie az űrlapot, és ellenőriznie kell, hogy megjelenik-e a megerősítő üzenet.
Modellvezérelt alkalmazások tesztelése
Modellvezérelt alkalmazások esetén összpontosítson az entitásnavigációra, az űrlap-interakciókra és az üzleti szabályokra:
Haladéktalan:
Hozzon létre egy tesztet a modellvezérelt alkalmazáshoz, amely teszteli a Partner entitás űrlapot. A tesztnek létre kell hoznia egy új számlarekordot, ellenőriznie kell a kötelező mezőket, és ellenőriznie kell, hogy a hitelkeret kiszámítására vonatkozó üzleti szabályok megfelelően működnek-e.
Bővítmények tesztelése Dataverse
Tesztek esetén Dataverse hangsúlyozza az adatműveleteket és az üzleti logika érvényesítését:
Haladéktalan:
Hozzon létre egy tesztet Dataverse , amely ellenőrzi az egyéni beépülő modulokat a megoldásomban. A tesztnek tesztrekordokat kell létrehoznia, aktiválnia kell a beépülő modul végrehajtását, és ellenőriznie kell a várt adatátalakításokat.
Mintaspecifikus tesztkérések
A legpontosabb tesztgenerálás érdekében hivatkozzon a tesztelési igényeinek megfelelő konkrét mintákra a Tesztmotor-minták katalógusából . Íme a testreszabott kérések a gyakori tesztelési forgatókönyvekhez:
ButtonClicker minta promptok
A ButtonClicker-minta a számláló alapvető működésének tesztelését mutatja be. Használja az alábbi utasításokat:
Haladéktalan:
Hozzon létre egy tesztet a számlálóalkalmazásomhoz, amely hasonló szerkezetű, mint a ButtonClicker-minta. Az alkalmazásom "IncrementBtn" és "ResetBtn" nevű gombokkal rendelkezik, amelyek az aktuális számot megjelenítő "CounterLabel" felirattal rendelkeznek. Hozzon létre egy tesztet, amely ellenőrzi, hogy mindkét gomb megfelelően működik-e, és hogy a maximális szám 10.
Haladéktalan:
Hozzon létre egy tesztet a gombinterakciós alkalmazáshoz a ButtonClicker-minta használatával. Az alkalmazásom rendelkezik egy "SubmitButton" gombbal, amelyet csak akkor szabad engedélyezni, ha a "NameInput" és az "EmailInput" mezők ki vannak töltve. Hozzon létre egy teszttervet a Power Fx viselkedés érvényesítésének lépéseivel.
Galéria tesztelési kérései
A BasicGallery és aNestedGallery minták bemutatják, hogyan tesztelheti a katalógus interakcióit:
Haladéktalan:
Hozzon létre egy tesztet a katalógusalkalmazásomhoz, ahol van egy "Termékek" katalógusom a "TitleLabel", a "PriceLabel" és a "SelectButton" vezérlőket tartalmazó termékelemekkel. A BasicGallery mintastruktúrával ellenőrizze, hogy ki tudom-e jelölni az elemeket, és hogy a megfelelő részletek megjelennek-e a "DetailPanel"-ben.
Adatműveletekre vonatkozó kérések
A Dataverse minta az adatműveletek tesztelését mutatja be:
Haladéktalan:
Hozzon létre egy tesztet a CRM alkalmazáshoz a Dataverse mintaminta használatával. Tesztelje, hogy tudok-e új kapcsolattartó-bejegyzést létrehozni, frissíteni, majd ellenőrizni, hogy a módosítások továbbra is fennállnak-e. Tartalmazza a felhasználói felületi teszteket és a közvetlen Dataverse műveleteket is.
AI tesztelési felszólítások
Az AI-alapú funkciók teszteléséhez tekintse meg az AI-kérés mintáját:
Haladéktalan:
Hozzon létre egy tesztet a hangulatelemző alkalmazáshoz az AI Prompt minta alapján. Az alkalmazásom rendelkezik egy "FeedbackInput" szövegmezővel, és AI Builder pozitív, negatív vagy semleges besorolással osztályozza. Hozzon létre egy tesztet, amely ellenőrzi, hogy a különböző bemenetek elfogadható küszöbértékeken belül várt eredményeket hozzanak létre.
Fejlett technikák
Ez a szakasz példákat mutat be a speciális kérési képességekre.
Több környezetre kiterjedő tesztcsomagok létrehozása
Kérheti a Copilotot, hogy több környezetben működő teszteket hozzon létre:
Haladéktalan:
Hozzon létre egy tesztcsomagot az alkalmazásomhoz, amely DEV, TEST és PROD környezetekben futtatható az egyes környezetekhez megfelelő konfigurációs változókkal.
Adat-utánzási forgatókönyvek létrehozása
Elkülönített tesztelés csatlakozó utánzásával:
Haladéktalan:
Hozzon létre egy tesztet az Outlook-összekötőt használó Office 365 alkalmazáshoz. A tesztnek szimulálnia kell az e-mailek fogadását, és ellenőriznie kell az alkalmazás feldolgozási logikáját.
AI képességek tesztelése és nem determinisztikus eredmények kezelése
Ha mesterséges intelligencián alapuló alkalmazásokkal dolgozik, a tesztelés egyedi kihívásokat jelent, mivel az AI-kimenetek kissé eltérhetnek a futtatások között, még azonos bemenetek esetén is. Ez a nem determinisztikus viselkedés speciális tesztelési megközelítéseket igényel.
A nem determinisztikus tesztelés ismertetése
A nem determinisztikus tesztelés magában foglalja a kimenetek érvényesítését, amelyek jogosan változhatnak a tesztfuttatások között:
- AI-modell kimenetei: Válaszok olyan AI-modellekből AI Builder
- Megbízhatósági pontszámok: Numerikus értékelések, amelyek elfogadható tartományokon belül ingadozhatnak
- Generált tartalom: AI-rendszerek által készített szöveg vagy ajánlások
A Preview.AIExecutePrompt használata az AI-képességek determinisztikus teszteléséhez
A tesztmotor biztosítja a Preview.AIExecutePrompt , amely lehetővé teszi az AI-válaszok determinisztikus érvényesítését. Ez a megközelítés a következőket teszi lehetővé:
- AI-kérések végrehajtása tesztforgatókönyveken belül
- A strukturált válaszok elemzése és ellenőrzése
- Annak ellenőrzése, hogy a kritikus kimenetek megfelelnek-e az elvárásoknak a lehetséges eltérések ellenére
Példa: Minősítés kiértékelése a következővel AI Builder
Az alábbi példa bemutatja, hogy a Preview.AIExecutePrompt függvény használatával tesztelhet egy AI-alapú minősítési rendszert:
EvaluateTestQuestionPrompt(Prompt: TestQuestion): TestResult =
With({
Response: ParseJSON(
Preview.AIExecutePrompt("PromptEvaluator",
{
Context: "You are a helpful agent asking about external customer service questions.",
Question: Prompt.Question
}).Text)
},If(
IsError(AssertNotError(Prompt.ExpectedRating=Response.Rating, Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating)),
{PassFail: 1, Summary: Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating}, {PassFail: 0, Summary: "Pass " & Prompt.Question}
))
Ebben a példában:
- A teszt egy AI-kérést hajt végre a "PromptEvaluator" modellen
- Átad egy kontextust és egy kérdést értékelésre
- Ellenőrzi, hogy a visszaadott minősítés megfelel-e a várt értéknek
- Egyértelmű visszajelzést ad a teszt sikeréről vagy kudarcáról
A teljes implementációt az AI-prompt mintában fedezheti fel a-TestEngine PowerApps adattárból.
A mesterséges intelligenciát támogató tesztelés beépítése
Ha AI-alapú alkalmazások tesztjeit használja GitHub Copilot :
Haladéktalan:
Hozzon létre egy tesztet az űrlapfeldolgozást használó AI Builder , AI-alapú alkalmazásomhoz. Tartalmazzon olyan tesztlépéseket, amelyek ellenőrzik az AI-eredményeket a nem determinisztikus kimenetek megfelelő tűréshatárával.
Hibaelhárítás és finomítás
Ha GitHub Copilot olyan teszteket hoz létre, amelyek nem felelnek meg az igényeinek:
- Finomítsa a kérést: Legyen pontosabb, hogy mit szeretne tesztelni
- Adjon példákat: Link a kívánt stílusnak megfelelő konkrét tesztmintákhoz
- Összetett tesztek lebontása: Kisebb, fókuszált tesztkomponensek kérése
- Iterálás: Használja a Copilot válaszait a következő felszólítás finomításához
Kapcsolódó cikkek
Fedezze fel a Test Engine funkcióit
Tallózás a tesztmotor-minták katalógusában
Tudnivalók a Power Fx tesztfüggvényekről
A YAML-tesztformátum ismertetése
Hitelesítési lehetőségek megismerése
Betanítás: Alkalmazások létrehozása ügynök módban GitHub Copilot