Napomena
Za pristup ovoj stranici potrebna je autorizacija. Možete se pokušati prijaviti ili promijeniti direktorije.
Za pristup ovoj stranici potrebna je autorizacija. Možete pokušati promijeniti direktorije.
Napomena
Značajke pretpregleda nisu namijenjene u proizvodne svrhe i mogu imati ograničene funkcije. Te su značajke dostupne prije službenog izdavanja da bi se klijentima omogućio prijevremeni pristup i slanje povratnih informacija.
Izrada sveobuhvatnih planova testiranja za Power Platform aplikacije može biti dugotrajna, posebno za složene scenarije. Alati GitHub Copilot za autorstvo potpomognuti umjetnom inteligencijom mogu značajno ubrzati ovaj proces generiranjem predložaka testiranja, predlaganjem testnih slučajeva i automatizacijom standardnog stvaranja koda.
Ovaj vodič objašnjava kako koristiti GitHub Copilot s Power Platform rješenjima za kontrolu izvora za učinkovito stvaranje planova testiranja testnog motora.
Preduvjeti
Prije nego što započnete, provjerite imate li sljedeće:
- Visual Studio Instaliran kod
- GitHub Copilot pretplata
- GitHub Copilot Proširenje za chat za VS Code
- Power Platform CLI instaliran
- Rješenje kontrolirano izvorom Power Platform
Postavljanje okruženja za stvaranje testa
Da biste maksimizirali učinkovitost izrade testova potpomognutog umjetnom inteligencijom, kombinirajte ove alate u strukturiranom tijeku rada:
- Nabavite izvorne datoteke
- Klonirajte svoje Power Platform okruženje ili rješenje iz kontrole izvornog koda
- Izvezite i raspakirajte svoje rješenje s Power Platform datotekama pomoću izvoza pac rješenja i raspakiranja pac rješenja
- Inicijalizirajte git spremište za kontrolu verzija (ako već nije učinjeno)
- Stvaranje namjenske testne mape u spremištu rješenja
- Otvorite mapu rješenja u Kodu Visual Studio
Korištenje GitHub Copilot za izradu testa
GitHub Copilot može vam pomoći u generiranju različitih testnih komponenti na temelju vašeg rješenja kontroliranog izvorom. Evo kako učinkovito koristiti njegove mogućnosti:
Korištenje ogledne dokumentacije kao konteksta
Katalog uzoraka testnih motora pruža bogat izvor referentnog materijala za GitHub Copilot. Copilotu možete pomoći u stvaranju kvalitetnijih testova na sljedeći način:
- Uključivanje datoteke samples.md u radni prostor
- Upućivanje na određene uzorke u upitima
- Pružanje veza na ogledne GitHub spremišta
Na primjer, mogli biste:
- Otvorite i kod aplikacije i datoteku samples.md u VS Codeu
- Zamolite Copilota da stvori testove "slične uzorku ButtonClicker" ili "koristeći uzorke iz uzorka Dataverse "
- Referenca specifičnih mogućnosti iz uzoraka koji odgovaraju vašim potrebama testiranja
Ovaj pristup pomaže Copilotu da razumije Power Platform obrasce testnog motora i generira preciznije testove.
Rad s u načinu rada agenta GitHub Copilot
Visual Studio Code's Chat nudi način rada GitHub Copilot agenta koji može pomoći u generiranju testova na temelju datoteka vašeg rješenja. Ovaj način rada omogućuje Copilotu dublji pristup i razumijevanje konteksta vašeg projekta.
Da biste koristili način rada agenta za generiranje testa:
- U VS Code otvorite GitHub Copilot Chat (Ctrl+Shift+I)
- Odaberite Agent iz birača načina rada Copilot
- Izradite detaljan upit o testu koji želite izraditi
Primjeri upita za generiranje testa
Pokušajte koristiti upute poput ovih za generiranje testa:
Cilj:
Generirajte sveobuhvatni testni paket za aplikaciju radnog područja pomoću testnog modula Power Apps , modeliranog prema uzorku ButtonClicker.
Brz:
Generirajte test za ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml koristeći uzorak at https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker kao referencu. Stvorite očekivane slučajeve, rubne slučajeve i iznimne slučajeve. Test bi trebao stvoriti testnu YAML datoteku i testne korake Power Fx , config.json i RunTest.ps1 na temelju uzorka kako bi mi omogućio pokretanje testa.
Cilj:
Izradite detaljan plan testiranja za aplikaciju stvorenu prema modelu da biste osigurali da osnovne funkcije i poslovna logika rade prema očekivanjima.
Brz:
Stvorite sveobuhvatan plan testiranja za moju aplikaciju utemeljenu na modelu koja se nalazi na ./SolutionPackage/src/Other/Solution.xml. Test bi trebao potvrditi učitavanje obrasca, stvaranje zapisa i izvršavanje poslovnog pravila. Generirajte testni YAML, Power Fx korake i PowerShell skriptu za pokretanje testa.
Cilj:
Izradite plan testiranja za Dataverse entitete za provjeru CRUD operacija putem Power Fx akcija.
Brz:
Napravite sveobuhvatan plan testiranja za moje Dataverse entitete. Test bi trebao izvršiti radnje stvaranja, ažuriranja, brisanja Power Fx . Generirajte testni YAML, Power Fx korake i PowerShell skriptu za pokretanje testa.
Razumijevanje generiranih komponenti testa
Kada GitHub Copilot generira test, obično stvara sljedeće komponente:
- YAML testni plan: definira strukturu testiranja, URL aplikacije i korake testiranja
- Power Fx koraci testa: Sadrži logiku testiranja pomoću Power Fx izraza
- config.json: Konfiguracija za parametre izvođenja testa
- RunTest.ps1: PowerShell skripta za izvršavanje testa
Primjer: Generirana struktura ispitivanja
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
Najbolje prakse za izradu testova potpomognutih umjetnom inteligencijom
Razmotrite sljedeće odjeljke kako biste maksimalno GitHub Copilot iskoristili stvaranje testa testnog motora.
Navedite jasan kontekst u upitima
Budite precizni o tome što želite testirati i uključite reference na:
- Točne datoteke za testiranje
- Primjeri testova koji će se koristiti kao predlošci
- Specifični testni scenariji koje želite pokriti
- Svi zahtjevi za provjeru autentičnosti ili okruženje
Korištenje uzoraka testnog modula za kontekst
Dokumentacija # samples.md katalogizira sve dostupne uzorke iz spremišta Test Engine, što može biti izvrsna referenca pri izradi upita GitHub Copilot. Na primjer, kada testirate aplikaciju radnog područja s gumbima, možete se pozvati na uzorak klikera na gumbe:
Brz:
Generirajte test za moju aplikaciju radnog područja na ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml pomoću uzorka ButtonClicker iz. https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker Test bi trebao:
1. Provjerite povećava li moj gumb brojača vrijednost na zaslonu
2. Ispitni granični uvjeti (npr. maksimalna vrijednost)
3. Uključite udice za životni ciklus OnTestCaseStart i OnTestCaseComplete
4. Generirajte config.json s odgovarajućim varijablama okoline
Ovaj pristup pomaže Copilotu da razumije strukturu testa i generira točnije, kontekstualno relevantne testove na temelju provjerenih primjera.
Koristite rješenja kontrolirana izvorom kao kontekst
Copilot ima najbolje performanse kada može analizirati strukturu vašeg rješenja. Koristite kontrolu izvornog koda za Power Platform rješenja za pružanje ovog konteksta. Ovaj kontekst omogućuje Copilotu da:
- Objašnjenje strukture aplikacije
- Identificirajte nazive i svojstva kontrola
- Generirajte preciznije korake testiranja
- Referenciranje ispravnih putova datoteka
Pregled i preciziranje generiranih testova
Iako testovi generirani umjetnom inteligencijom pružaju izvrsnu početnu točku, uvijek:
- Provjerite da li reference kontrole odgovaraju vašoj aplikaciji
- Dodavanje tvrdnji za ključne poslovne funkcije
- Osigurajte pravilno rukovanje rubnim kućištima
- Provjera konfiguracije provjere autentičnosti
Kombinirajte s ručnom stručnošću
Za složene testne scenarije koristite GitHub Copilot za:
- Generirajte okvir i strukturu testiranja
- Stvaranje standardnih obrazaca provjere valjanosti
- Predložite rubne slučajeve koje treba razmotriti
Zatim proširite svoju stručnost u domeni za:
- Pravila provjere valjanosti specifična za tvrtku
- Okolišna pitanja
- Specijalizirani ispitni podaci
Uobičajeni obrasci generiranja testova
Ovaj odjeljak sadrži neke uobičajene obrasce generiranja testova:
Testiranje aplikacija radnog područja
Za aplikacije radnog područja koristite upite koji upućuju na datoteku App.fx.yaml u rješenju kojim upravlja izvor:
Brz:
Generirajte test za moju aplikaciju radnog područja na ./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml koji provjerava postupak slanja troškova. Test bi trebao popuniti polja troškova, poslati obrazac i provjeriti je li se pojavila poruka potvrde.
Testiranje aplikacija utemeljenih na modelu
Za aplikacije utemeljene na modelu usredotočite se na navigaciju entitetima, interakcije s obrascima i poslovna pravila:
Brz:
Stvorite test za moju aplikaciju stvorenu prema modelu koja testira obrazac entiteta Račun. Test bi trebao stvoriti novi zapis računa, provjeriti obavezna polja i provjeriti rade li poslovna pravila za izračun kreditnog limita ispravno.
Testiranje Dataverse proširenja
Za Dataverse testove naglasite operacije s podacima i provjeru valjanosti poslovne logike:
Brz:
Generirajte Dataverse test koji potvrđuje prilagođene dodatke u mom rješenju. Test bi trebao stvoriti testne zapise, pokrenuti izvršavanje dodatka i provjeriti jesu li se dogodile očekivane transformacije podataka.
Upiti za testiranje specifični za uzorak
Da biste dobili najtočnije generiranje testa, referencirajte određene uzorke iz kataloga uzoraka testnog motora koji odgovaraju vašim potrebama testiranja. Evo prilagođenih upita za uobičajene scenarije testiranja:
ButtonClicker primjeri upita
Primjer ButtonClicker pokazuje osnovno testiranje funkcionalnosti brojača. Koristite ove upite:
Brz:
Generirajte test za moju aplikaciju brojača sa sličnom strukturom kao i uzorak ButtonClicker. Moja aplikacija ima gumbe pod nazivom "IncrementBtn" i "ResetBtn" s "CounterLabel" koji prikazuje trenutni broj. Stvorite test koji potvrđuje da oba gumba rade ispravno i da je maksimalan broj 10.
Brz:
Stvorite test za moju aplikaciju za interakciju s gumbima koristeći uzorak ButtonClicker kao referencu. Moja aplikacija ima "SubmitButton" koji bi trebao biti omogućen samo kada su polja "NameInput" i "EmailInput" ispunjena. Generirajte plan testiranja s Power Fx koracima za provjeru ovog ponašanja.
Upiti za testiranje galerije
Uzorci BasicGallery i NestedGallery pokazuju kako testirati interakcije galerije:
Brz:
Generirajte test za svoju aplikaciju galerije u kojoj imam galeriju "Proizvodi" sa stavkama proizvoda koje sadrže kontrole "TitleLabel", "PriceLabel" i "SelectButton". Upotrijebite strukturu primjera BasicGallery da biste provjerili mogu li odabrati stavke i prikazuju li se točni detalji u "DetailPanelu".
Upiti za podatkovne operacije
Uzorak Dataverse prikazuje testiranje operacija s podacima:
Brz:
Stvorite test za svoju CRM aplikaciju pomoću uzorka Dataverse uzorka. Testirajte mogu li stvoriti novi zapis kontakta, ažurirajte ga, a zatim provjerite jesu li promjene prisutne. Uključite i testove korisničkog sučelja i izravne Dataverse operacije.
Upiti za testiranje umjetne inteligencije
Za testiranje funkcionalnosti koju pokreće umjetna inteligencija pogledajte uzorak upita umjetne inteligencije:
Brz:
Generirajte test za moju aplikaciju za analizu raspoloženja na temelju uzorka upita umjetne inteligencije. Moja aplikacija ima tekstni okvir "FeedbackInput" i koristi ga AI Builder za klasificiranje kao pozitivnog, negativnog ili neutralnog. Stvorite test koji potvrđuje različite ulazne podatke, proizvodi očekivane rezultate unutar prihvatljivih pragova.
Napredne tehnike
U ovom se odjeljku navode primjeri naprednih mogućnosti brzina.
Stvaranje testnih paketa za više okruženja
Možete zatražiti od Copilota da generira testove koji rade u više okruženja:
Brz:
Generirajte testni paket za moju aplikaciju koji se može izvoditi u DEV, TEST i PROD okruženjima s odgovarajućim konfiguracijskim varijablama za svako okruženje.
Generiranje scenarija ismijavanja podataka
Za izolirano ispitivanje s lažnim konektorom:
Brz:
Stvorite test s lažnim odgovorima poveznika za moju aplikaciju Office 365 koja koristi poveznik programa Outlook. Test bi trebao simulirati primanje e-pošte i potvrditi logiku obrade aplikacije.
Testiranje mogućnosti umjetne inteligencije i rukovanje nedeterminističkim rezultatima
Kada radite s aplikacijama koje pokreće umjetna inteligencija, testiranje uvodi jedinstvene izazove jer se izlazi umjetne inteligencije mogu malo razlikovati između pokretanja, čak i s identičnim ulazima. Ovo nedeterminističko ponašanje zahtijeva posebne pristupe testiranju.
Razumijevanje nedeterminističkog testiranja
Nedeterminističko testiranje uključuje provjeru valjanosti rezultata koji se mogu legitimno razlikovati tijekom testiranja:
- Izlazi AI modela: Odgovori AI modela kao što su GPT ili prilagođene AI Builder komponente
- Rezultati pouzdanosti: Numeričke procjene koje mogu varirati unutar prihvatljivih raspona
- Generirani sadržaj: tekst ili preporuke koje proizvode sustavi umjetne inteligencije
Korištenje Preview.AIExecutePrompt za determinističko testiranje mogućnosti umjetne inteligencije
Test Engine pruža Preview.AIExecutePrompt koji omogućuje determinističku provjeru valjanosti odgovora umjetne inteligencije. Ovaj pristup vam omogućuje:
- Izvršavanje upita umjetne inteligencije u testnim scenarijima
- Raščlanjivanje i provjera strukturiranih odgovora
- Provjerite ispunjavaju li kritični rezultati očekivanja unatoč mogućim varijacijama
Primjer: Ocjenjivanje s AI Builder
Sljedeći primjer pokazuje upotrebu Preview.AIExecutePrompt funkcije za testiranje sustava ocjenjivanja koji pokreće umjetna inteligencija:
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}
))
U ovom primjeru:
- Test izvršava upit umjetne inteligencije prema modelu "PromptEvaluator"
- Prosljeđuje kontekst i pitanje za evaluaciju
- Potvrđuje da se vraćena ocjena podudara s očekivanom vrijednošću
- Pruža jasne povratne informacije o uspjehu ili neuspjehu testa
Kompletnu implementaciju možete istražiti u uzorku AI Prompt iz PowerApps spremišta TestEngine .
Uključivanje testiranja svjesnog umjetne inteligencije
Kada se koristi GitHub Copilot za generiranje testova za aplikacije pokretane umjetnom inteligencijom:
Brz:
Generirajte test za moju aplikaciju koju pokreće umjetna inteligencija koja koristi AI Builder obradu obrazaca. Uključite testne korake koji potvrđuju rezultate umjetne inteligencije s odgovarajućom tolerancijom za nedeterminističke rezultate.
Otklanjanje poteškoća i usavršavanje
Ako GitHub Copilot generira testove koji ne zadovoljavaju vaše potrebe:
- Preciziranje upita: Budite precizniji o tome što želite testirati
- Navedite primjere: Povežite se s određenim testnim uzorcima koji odgovaraju željenom stilu
- Raščlanite složene testove: zatražite generiranje manjih, fokusiranih testnih komponenti
- Ponavljanje: koristite odgovore Copilota da biste precizirali sljedeći upit
Povezani članci
Istražite značajke testnog modula
Pregledajte katalog uzoraka testnih motora
Saznajte više o Power Fx testnim funkcijama
Objašnjenje formata YAML testa
Istražite mogućnosti provjere autentičnosti
Obuka: Izrada aplikacija s načinom GitHub Copilot rada agenta