Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Poznámka
Funkcie ukážky nie sú určené na produkčné účely a môžu mať obmedzenú funkčnosť. Tieto funkcie sú k dispozícii pred oficiálnym vydaním, aby k nim mohli zákazníci získať rýchly prístup a poskytnúť odozvu.
Vytváranie komplexných testovacích plánov pre aplikácie môže byť časovo náročné, najmä v prípade zložitých scenárov. Power Platform Nástroje na tvorbu obsahu s podporou umelej inteligencie, ako napríklad GitHub Copilot , môžu tento proces výrazne urýchliť generovaním testovacích šablón, navrhovaním testovacích prípadov a automatizáciou vytvárania štandardného kódu.
Táto príručka vysvetľuje, ako používať riešenia správy zdrojového kódu na efektívne vytváranie testovacích plánov Test Engine. GitHub Copilot Power Platform
Požiadavky
Predtým, ako začnete, sa uistite, že máte:
- Visual Studio Kód nainštalovaný
- GitHub Copilot predplatné
- GitHub Copilot Rozšírenie chatu pre VS Code
- Power Platform CLI nainštalované
- Riešenie s kontrolovaným zdrojom Power Platform
Nastavenie prostredia na tvorbu testov
Ak chcete maximalizovať efektivitu tvorby testov s pomocou umelej inteligencie, skombinujte tieto nástroje v štruktúrovanom pracovnom postupe:
- Získajte svoje zdrojové súbory
- Naklonujte svoje prostredie alebo riešenie zo správy zdrojového kódu Power Platform
- Exportujte a rozbaľte svoje riešenie zo súborov Power Platform pomocou pac solution export a pac solution unpack
- Inicializujte git repozitár pre správu verzií (ak ste to ešte neurobili)
- Vytvorte si vyhradený testovací priečinok vo vašom úložisku riešení
- Otvorte priečinok s riešením v kóde Visual Studio
Použitie GitHub Copilot na vytvorenie testu
GitHub Copilot vám môže pomôcť vygenerovať rôzne testovacie komponenty na základe vášho riešenia s riadeným zdrojovým kódom. Tu je návod, ako efektívne využiť jeho možnosti:
Použitie vzorovej dokumentácie ako kontextu
Katalóg vzoriek testovacieho enginu poskytuje bohatý zdroj referenčného materiálu pre... GitHub Copilot Môžete pomôcť spoločnosti Copilot generovať testy vyššej kvality tým, že:
- Pridanie súboru samples.md do vášho pracovného priestoru
- Odkazovanie na konkrétne vzorky vo vašich výzvach
- Poskytovanie odkazov na vzorové repozitáre GitHub
Napríklad by ste mohli:
- Otvorte kód aplikácie aj súbor samples.md vo VS Code
- Požiadajte Copilota o vytvorenie testov „podobných vzorke ButtonClicker“ alebo „s použitím vzorov zo vzorky“ Dataverse
- Odkazujte na špecifické funkcie zo vzoriek, ktoré zodpovedajú vašim potrebám testovania
Tento prístup pomáha spoločnosti Copilot pochopiť vzory testovacieho enginu a generovať presnejšie testy. Power Platform
Práca s GitHub Copilot v režime agenta
Visual Studio Chat v Code ponúka režim agenta, ktorý vám pomôže generovať testy na základe vašich súborov s riešeniami. GitHub Copilot Tento režim umožňuje Copilotu hlbšie pristupovať k kontextu vášho projektu a pochopiť ho.
Použitie režimu agenta na generovanie testov:
- Vo VS Code otvorte GitHub Copilot Chat (Ctrl+Shift+I)
- Vyberte Agent z voliča režimu Copilot
- Vytvorte podrobný výzvu k testu, ktorý chcete vytvoriť
Príklady výziev na generovanie testov
Skúste použiť na generovanie testov takéto výzvy:
Cieľ:
Vygenerujte komplexnú testovaciu sadu pre plátnoovú aplikáciu pomocou testovacieho enginu, modelovaného podľa ukážky ButtonClicker Power Apps . ...
Výzva:
Vygenerujte test pre ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml pomocou vzoru na adrese https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker ako referencie. Vytvorte očakávané prípady, okrajové prípady a výnimky. Test by mal vytvoriť testovací súbor YAML a na základe vzorky vykonať testovacie kroky config.json a RunTest.ps1, aby som mohol test spustiť. Power Fx
Cieľ:
Vytvorte podrobný testovací plán pre aplikáciu riadenú modelom, aby ste zabezpečili, že základné funkcie a obchodná logika fungujú podľa očakávaní.
Výzva:
Vytvorte komplexný testovací plán pre moju modelom riadenú aplikáciu, ktorá sa nachádza na adrese ./SolutionPackage/src/Other/Solution.xml. Test by mal overiť načítanie formulára, vytvorenie záznamu a vykonanie obchodných pravidiel. Vygenerujte testovací YAML, kroky a skript PowerShell na spustenie testu. Power Fx
Cieľ:
Vytvorte testovací plán pre entity na overenie operácií CRUD prostredníctvom akcií. Dataverse Power Fx
Výzva:
Vytvoriť komplexný testovací plán pre moje entity. Dataverse Test by mal vykonávať akcie vytvárania, aktualizácie a mazania. Power Fx Vygenerujte testovací YAML, kroky a skript PowerShell na spustenie testu. Power Fx
Pochopenie generovaných testovacích komponentov
Keď GitHub Copilot generuje test, zvyčajne vytvorí nasledujúce komponenty:
- Testovací plán YAML: Definuje štruktúru testu, URL adresu aplikácie a kroky testovania
- Power Fx kroky testovania: Obsahuje logiku testovania pomocou výrazov Power Fx
- config.json: Konfigurácia parametrov vykonávania testov
- RunTest.ps1: Skript PowerShellu na spustenie testu
Príklad: Vygenerovaná štruktúra testu
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
Najlepšie postupy pre tvorbu testov s pomocou umelej inteligencie
Zvážte nasledujúce časti, aby ste čo najlepšie využili vytváranie testov v Test Engine. GitHub Copilot
Vo svojich výzvach uveďte jasný kontext
Buďte konkrétni v tom, čo chcete testovať, a uveďte odkazy na:
- Presné súbory na testovanie
- Vzorové testy na použitie ako šablóny
- Konkrétne testovacie scenáre, ktoré chcete pokryť
- Akékoľvek požiadavky na overenie alebo prostredie
Používanie vzoriek testovacieho enginu pre kontext
Dokumentácia k **samples.md** katalogizuje všetky dostupné vzorky z repozitára Test Engine, čo môže byť vynikajúcou referenciou pri vytváraní výziev pre **. GitHub Copilot Napríklad pri testovaní aplikácie plátna s tlačidlami môžete použiť príklad Button Clicker:
Výzva:
Vygenerujte test pre moju aplikáciu Canvas na adrese ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml pomocou ukážky ButtonClicker z https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker. Test by mal:
1. Overte, či moje tlačidlo počítadla zvyšuje hodnotu na obrazovke
2. Overte okrajové podmienky testu (napr. maximálna hodnota)
3. Zahrňte hooky životného cyklu OnTestCaseStart a OnTestCaseComplete
4. Vygenerujte súbor config.json s príslušnými premennými prostredia
Tento prístup pomáha Copilotu pochopiť štruktúru testov a generuje presnejšie, kontextovo relevantnejšie testy na základe overených príkladov.
Použitie riešení s riadeným zdrojovým kódom ako kontext
Copilot dosahuje najlepšie výsledky, keď dokáže analyzovať štruktúru vášho riešenia. Na poskytnutie tohto kontextu použite riadenie zdrojového kódu pre Power Platform riešenia . Tento kontext umožňuje Copilotovi:
- Pochopte štruktúru svojej aplikácie
- Identifikácia názvov a vlastností ovládacích prvkov
- Generovanie presnejších krokov testovania
- Uveďte správne cesty k súborom
Skontrolujte a spresnite vygenerované testy
Hoci testy generované umelou inteligenciou poskytujú vynikajúci východiskový bod, vždy:
- Overte, či sa referenčné hodnoty ovládacích prvkov zhodujú s vašou aplikáciou
- Pridajte tvrdenia pre funkcie kritické pre podnikanie
- Zabezpečenie správneho spracovania okrajových prípadov
- Overiť konfiguráciu overenia
Kombinujte s manuálnou odbornosťou
V prípade zložitých testovacích scenárov použite GitHub Copilot na:
- Vygenerujte testovací rámec a štruktúru
- Vytvorte štandardné overovacie vzory
- Navrhnite hraničné prípady, ktoré je potrebné zvážiť
Potom rozšírte svoju odbornosť v oblasti:
- Pravidlá overovania špecifické pre dané podnikanie
- Environmentálne aspekty
- Špecializované testovacie údaje
Bežné vzory generovania testov
Táto časť obsahuje niektoré bežné vzory generovania testov:
Testovanie aplikácií Canvas
V prípade aplikácií plátna použite výzvy, ktoré odkazujú na súbor App.fx.yaml vo vašom riešení s riadeným zdrojovým kódom:
Výzva:
Vygenerujte test pre moju aplikáciu Canvas na adrese ./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml, ktorý overí proces odoslania výdavkov. Test by mal vyplniť polia výdavkov, odoslať formulár a overiť, či sa zobrazí potvrdzujúca správa.
Testovanie modelovo riadených aplikácií
V prípade aplikácií riadených modelom sa zamerajte na navigáciu entitami, interakcie s formulármi a obchodné pravidlá:
Výzva:
Vytvorte test pre moju aplikáciu riadenú modelom, ktorý testuje formulár entity Obchodný vzťah. Test by mal vytvoriť nový záznam účtu, overiť povinné polia a overiť, či obchodné pravidlá pre výpočet kreditného limitu fungujú správne.
Testovanie rozšírení Dataverse
Pri testoch zdôraznite operácie s údajmi a overovanie obchodnej logiky: Dataverse
Výzva:
Vygenerujte test, ktorý overí vlastné pluginy v mojom riešení. Dataverse Test by mal vytvoriť testovacie záznamy, spustiť vykonanie pluginu a overiť, či došlo k očakávaným transformáciám údajov.
Výzvy na testovanie špecifické pre vzorku
Ak chcete získať čo najpresnejšie generovanie testov, pozrite si konkrétne vzorky z katalógu vzoriek Test Engine, ktoré zodpovedajú vašim potrebám testovania. ... Tu sú prispôsobené pokyny pre bežné testovacie scenáre:
Ukážkové výzvy ButtonClicker
Ukážka ButtonClicker demonštruje základné testovanie funkčnosti počítadla. Použite tieto pokyny:
Výzva:
Vygenerujte test pre moju aplikáciu počítadla s podobnou štruktúrou ako ukážka ButtonClicker. Moja aplikácia má tlačidlá s názvom „IncrementBtn“ a „ResetBtn“ s „CounterLabel“, ktoré zobrazuje aktuálny počet. Vytvorte test, ktorý overí, či obe tlačidlá fungujú správne a či je maximálny počet 10.
Výzva:
Vytvorte test pre moju aplikáciu na interakciu s tlačidlami pomocou vzoru ButtonClicker ako referencie. Moja aplikácia má tlačidlo „SubmitButton“, ktoré by malo byť povolené iba po vyplnení polí „NameInput“ a „EmailInput“. Vygenerujte testovací plán s krokmi na overenie tohto správania. Power Fx
Výzvy na testovanie galérie
Ukážky BasicGallery a NestedGallery ukazujú, ako testovať interakcie s galériou:
Výzva:
Vygenerujte test pre moju galériovú aplikáciu, kde mám galériu „Produkty“ s položkami produktov obsahujúcimi ovládacie prvky „TitleLabel“, „PriceLabel“ a „SelectButton“. Na overenie, či môžem vybrať položky a či sa v paneli „DetailPanel“ zobrazujú správne podrobnosti, použite vzorovú štruktúru BasicGallery.
Výzvy na operácie s údajmi
Vzorka demonštruje testovanie dátových operácií: Dataverse
Výzva:
Vytvorte test pre moju CRM aplikáciu pomocou vzorového vzoru. Dataverse Otestovať, či môžem vytvoriť nový záznam kontaktu, aktualizovať ho a potom overiť, či zmeny pretrvávajú. Zahrňte testy používateľského rozhrania aj priame operácie. Dataverse
Výzvy na testovanie umelej inteligencie
Pre testovanie funkcií s umelou inteligenciou si pozrite ukážku výzvy umelej inteligencie:
Výzva:
Vygenerujte test pre moju aplikáciu na analýzu sentimentu na základe vzorovej výzvy umelej inteligencie. Moja aplikácia má textové pole „FeedbackInput“ a používa ho na klasifikáciu ako pozitívny, negatívny alebo neutrálny. AI Builder Vytvorte test, ktorý overuje, či rôzne vstupy produkujú očakávané výstupy v rámci prijateľných prahových hodnôt.
Pokročilé techniky
Táto časť obsahuje príklady pokročilých funkcií výziev.
Vytváranie testovacích súprav pre viacero prostredí
Môžete vyzvať Copilota, aby vygeneroval testy, ktoré fungujú vo viacerých prostrediach:
Výzva:
Vygenerujte testovaciu sadu pre moju aplikáciu, ktorá môže bežať v prostrediach DEV, TEST a PROD s príslušnými konfiguračnými premennými pre každé prostredie.
Generovanie scenárov simulácie dát
Pre izolované testovanie s napodobňovaním konektora:
Výzva:
Vytvorte test s napodobenými odpoveďami konektora pre moju aplikáciu, ktorá používa konektor Outlooku. Office 365 Test by mal simulovať prijímanie e-mailov a overiť logiku spracovania aplikácie.
Testovanie schopností umelej inteligencie a spracovanie nedeterministických výsledkov
Pri práci s aplikáciami založenými na umelej inteligencii prináša testovanie jedinečné výzvy, pretože výstupy umelej inteligencie sa môžu medzi jednotlivými spusteniami mierne líšiť, a to aj pri rovnakých vstupoch. Toto nedeterministické správanie si vyžaduje špeciálne testovacie prístupy.
Pochopenie nedeterministického testovania
Nedeterministické testovanie zahŕňa overovanie výstupov, ktoré sa môžu v jednotlivých testovacích cykloch legitímne líšiť:
- Výstupy modelu AI: Odpovede z modelov AI, ako napríklad GPT alebo vlastné AI Builder komponenty
- Skóre spoľahlivosti: Číselné hodnotenia, ktoré môžu kolísať v rámci prijateľných rozsahov
- Generovaný obsah: Text alebo odporúčania vytvorené systémami umelej inteligencie
Použitie Preview.AIExecutePrompt na deterministické testovanie schopností umelej inteligencie
Testovací engine poskytuje funkciu Preview.AIExecutePrompt, ktorá umožňuje deterministické overovanie odpovedí umelej inteligencie. ... Tento prístup vám umožňuje:
- Vykonávanie pokynov umelej inteligencie v rámci testovacích scenárov
- Analyzujte a overte štruktúrované odpovede
- Overiť, či kritické výstupy spĺňajú očakávania napriek potenciálnym odchýlkam
Príklad: Hodnotenie s AI Builder
Nasledujúci príklad demonštruje použitie funkcie Preview.AIExecutePrompt na testovanie systému hodnotenia s umelou inteligenciou:
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}
))
V tomto príklade:
- Test vykoná výzvu umelej inteligencie v modeli „PromptEvaluator“.
- Odovzdáva kontext a otázku na vyhodnotenie
- Overuje, či vrátené hodnotenie zodpovedá očakávanej hodnote
- Poskytuje jasnú spätnú väzbu o úspechu alebo neúspechu testu
Kompletnú implementáciu si môžete pozrieť v ukážke AI Prompt z repozitára -TestEngine. ...PowerApps
Začlenenie testovania s ohľadom na umelú inteligenciu
Pri použití GitHub Copilot na generovanie testov pre aplikácie s umelou inteligenciou:
Výzva:
Vygenerujte test pre moju aplikáciu s umelou inteligenciou, ktorá používa spracovanie formulárov. AI Builder Zahrňte testovacie kroky, ktoré overujú výsledky umelej inteligencie s vhodnou toleranciou pre nedeterministické výstupy.
Riešenie problémov a vylepšenia
Ak GitHub Copilot generuje testy, ktoré nespĺňajú vaše potreby:
- Spresnite svoju výzvu: Buďte konkrétnejší v tom, čo chcete testovať
- Uveďte príklady: Odkaz na konkrétne testovacie vzorky, ktoré zodpovedajú požadovanému štýlu
- Rozdelenie zložitých testov: Vyžiadanie generovania menších, cielenejších testovacích komponentov
- Iterácia: Použite odpovede Copilota na spresnenie vašej ďalšej výzvy
Súvisiace články
Preskúmajte funkcie testovacieho enginu
Prehliadajte katalóg vzoriek testovacieho enginu
Získajte informácie o testovacích funkciách Power Fx
Pochopte formát testu YAML
Preskúmajte možnosti overenia
Školenie: Vytváranie aplikácií v režime agenta GitHub Copilot