Jagamisviis:


Power Appsi testmootori YAML-vorming (eelversioon)

Märkus.

Eelvaatefunktsioonid ei ole mõeldud kasutamiseks tootmises ja nende funktsioonid võivad olla piiratud. Need funktsioonid on saadaval enne ametlikku väljastamist, et kliendid saaksid sellele varakult juurdepääsu ja võiksid tagasisidet anda.

Testid on YAML-is määratletud samade juhiste järgi nagu Power Fx. Lugege lisateavet Power Fx YAML-i valemi grammatika kohta.

Üksikasjalikke näiteid leiate powerApps-TestEngine'i/näidiste kaustast.

YAML-skeemimääratlused

Atribuut Kirjeldus
testSuite Määratleb ühe testikomplekti, testimise juhtumid testkomplektis ja testikomplektile omase konfiguratsiooni.
testSätted Määratleb testikomplekti sätted, mida taaskasutatakse mitmel katsejuhtumil
environmentVariables Määratleb muutujad, mis võivad rakenduse eri keskkondadesse üleviimise korral muutuda.

testSuite

Kasutatakse ühe testi määratlemiseks.

Atribuut Tüüp Kirjeldus
persona string Nõutav. Kasutaja, kes on testimiseks sisse logitud. Peab vastama jaotises Kasutajad loetletud isikule.
testCases TestCases Nõutav. Määratleb testjuhtumid testkomplektis. Testkomplektides sisalduvad testijuhtumid käivitatakse järjest. Rakenduse olek püsib kõigil komplekti testijuhtumitel.
testSuiteName string Nõutav. Testkomplekti nimi.
appLogicalName string Valikuline. Käivitatava rakenduse loogiline nimi. Selle võib saada lahendusest. Lõuendirakenduste hankimiseks peate selle lahendusele lisama. Lugege artiklit Rakenduse tuvastamine testplaanis
appId GUID Valikuline. Käivitatava rakenduse ID. Nõutav ja seda kasutatakse ainult siis, kui appLogicalName seda pole olemas. Rakenduse ID-d tuleks kasutada ainult nende lõuendirakenduste jaoks, mis pole lahenduses. Lugege artiklit Rakenduse tuvastamine testplaanis
networkRequestMocks NetworkRequestMocks Valikuline. Määratleb testi jaoks vajalikud võrgupäringud.
onTestCaseComplete string Valikuline. Määratleb etapid, mis tuleb käivitada komplekti iga testjuhtumi jaoks pärast juhtumi käivitamist.
onTestCaseStart string Valikuline. Määratleb etapid, mis tuleb käivitada komplekti iga testjuhtumi jaoks enne juhtumi käivitamist.
onTestSuiteComplete string Valikuline. Määratleb toimingud, mis tuleb käivitada pärast paketi käivitamist.
testSuiteDescription string Valikuline. Lisateave kirjeldab, mida testkomplekt teeb.

Kuidas testimisplaanis oma rakendust tuvastada?

Peate määrama kas rakenduse appLogicalName või appId tuvastama selle. Kasutatav rakendus sõltub sellest, kas teie rakendus on lahenduses määratletud.

Kui määratlete oma rakendused lahendustes, jäävad testid kaasaskantavaks kõigis keskkondades. Määrake appLogicalName atribuut, mis näitab, et rakendus põhineb lahendusel.

Rakenduse loogilise nime leidmiseks tehke järgmist.

  1. Avage rakendust sisaldav lahendus Power Appsis
  2. Kasutage loendis nime (mitte kuvatavat nime). Nimeväärtus sisaldab lahenduse väljaandja kohandamis eesliidet.

Autonoomsed rakendused

Kui teie rakendus pole lahenduses määratletud, peate seda atribuuti appId kasutama.

Rakenduse ID leidmiseks tehke järgmist.

  1. Rakenduse otsimine Power Appsi loendist
  2. Avage üksikasjad ja märkige üles rakenduse ID GUID

NetworkRequestMocks

Atribuut Tüüp Kirjeldus
requestURL string Nõutav. Taotluse URL, mis saab mock vastuse. Glob patterns are accepted
responseDataFile string Nõutav. Mock Response contentiga tekstifail. Kogu selle faili tekst loetakse vastuseks
headers massiiv Valikuline. Päringu päiseväljade loend vormingus [fieldName: fieldValue]
method string Valikuline. Taotluse meetod (GET, POST jne)
requestBodyFile string Valikuline. Tekstifail koos taotluse kehaga. Kogu selle faili teksti loetakse taotluse sisuks

Valikuliste atribuutide korral rakendub marsruut kõigile, kui väärtust pole määratud. Näiteks kui method see on tühi, saadame tagasi mock vastuse, mis iganes meetod on, kui muud atribuudid kattuvad.

SharePointi/Dataverse/Connectori rakendustes requestURL ja method võib olla kõigi taotluste puhul sama. x-ms-request-method ja x-ms-request-url päistes võib olla vaja konfigureerida sel juhul erinevate taotluste tuvastamiseks.

TestCases

Atribuut Tüüp Kirjeldus
testCaseName string Nõutav. Õnnestumisest ja nurjumisest teatamiseks kasutatava katsejuhtumi nimi
testSteps TestSteps Nõutav. Power Fx-funktsioonide komplekt, mis kirjeldab testimisjuhtumi sooritamiseks vajalikke toiminguid. Vt näidet TestSteps
testCaseDescription No Valikuline. Lisateave kirjeldab, mida katsejuhtum teeb

TestSteps

  • TestSteps saab kasutada mis tahes olemasolevaid testmootori toite Fx funktsioone või selles raamistikus määratletud spetsiifilisi testfunktsioone .
  • Väärtus peaks algama püstkriipsuga (|), et võimaldada mitmerealiste YAML-i avaldiste kasutamist, millele järgneb võrdusmärk (=), mis näitab, et tegemist on Power Fx avaldisega
  • Funktsioonid peaksid olema eraldatud semikooloniga (;).
  • Kommentaare saab kasutada ja need peaksid algama kahekordsete kaldkriipsudega (//).

TestSteps example

testCases:
   - testCaseName: Fill in a city name and do the search
   testSteps: |
      = Screenshot("connectorapp_loaded.png");
         SetProperty(TextInput1.Text, "Atlanta");
         Select(Button1);
         Assert(Label4.Text = "You are seeing the mock response", "Validate the output is from the mock");
         Screenshot("connectorapp_end.png");

testSätted

Kasutatakse testiplaani testisätete määratlemiseks.

Atribuut Tüüp Kirjeldus
browserConfigurations BrowserConfiguration[] Nõutav. Testitavate brauserikonfiguratsioonide loend. Määrata tuleb vähemalt üks brauser.
extensionModules extensionModules Valikuline. Sisaldab lubamiseks andmeid laiendite kohta.
filePath string Valikuline. Failitee eraldi Yaml-failini koos kõigi testisätetega. Kui see on saadaval, alistab see testiplaani kõik testisätted.
headless boolean Valikuline. Vaikeväärtus on tõene. Kui see on seatud vääraks, kuvatakse brauser testi käitamise ajal.
locale string Valikuline. Lokaadi/kultuuri süntaks, milles testijuhtumid või testietapid on kirjutatud. Kui määramata, CultureInfo.CurrentCulture kasutatakse lokaadis vaikimisi testimisetappide sõelumiseks. Vaadake piirkonna- ja keelekaalutlusi
recordVideo boolean Valikuline. Vaikesäte on väär. Kui see on tõene, jäädvustatakse testi videosalvestus.
timeout täisarv Valikuline. Ajalõpu väärtus millisekundites. Vaikeväärtus on 30 000 millisekundit (30 millisekundit). Kui mõni toiming võtab ajalõpupiirangust kauem aega, lõpetab see katse nurjumise korral.
powerFxTestTypes name value Paari Valikuline. Tüübinime ja Power Fx-i tüübimääratluste loend. Vt powerFxTestTypesi näidet
testFunctions description code Paari Valikuline. Kirjelduste ja Power Fx-i funktsioonimääratluste loend. Vt testFunctionsi näidet

extensionModules

Sisaldab lubamiseks andmeid laiendite kohta.

Atribuut Tüüp Kirjeldus
enable bool Kas laiendmoodulid on lubatud või mitte.
allowPowerFxNamespaces loend Lubatavate PowerFx-nimeruumide loend.
parameters key value pairs Laiendmoodulite juhtimiseks väärtustega atribuudid. Praegu kehtib selle jaoks ainult loogikaparameeter enableDataverseFunctions .

Selles näites kirjeldatakse PowerFx Preview nimeruumi lubamist.

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

Lisateave eelvaatefunktsioonide kohta

Piirkonna- ja keelekaalutlused

Testmootor toetab mitmesuguseid keele- ja piirkonnasätteid (nt kümnendkohtade ja loendite eraldajad). Atribuut testSettings.locale reguleerib neid käitumisi. Lisateavet leiate teemast Microsoft Power Fx globaalne tugi.

Vaadake neid näidiskonfiguratsioone PowerApps-TestEngine GitHubi hoidlast.

powerFxTestTypes example

powerFxTestTypes:
 - name: ControlName
   value: |
      {ControlName: Text} 
 - name: Options
   value: |
      [{Name: Text, Value: Number}]   

Selles näites kirjeldatakse, kuidas määratleda kohandatud Power Fx-i tüüpe teie testijuhtumites kasutamiseks. Tüüp ControlName on määratletud kirjena, millel on üks Text väli, samas kui Options tüüp on määratletud kirjetabelina, mis sisaldab Name iga välja, mille tüüp Text on ja mille tüüp Valueon Number . Kohandatud tüüpe saab kasutada keerukamate ja spetsiifilisemate testistsenaariumide loomiseks, suurendades testimääratluste paindlikkust ja võimsust.

testFunctions example

testFunctions:
 - description: Wait until control is visible using Document Object Model (DOM) selector
   code: |
    WaitUntilVisible(control: Text): Void = 
      Preview.PlaywrightAction(Concatenate("//div[@data-id='", control, "']"), "wait");
 - description: Get the options for a control using Power Fx control from Model Driven App (MDA)
   code: |
    GetOptions(control: ControlName): Options =
      Preview.GetOptions(control);

Need testimisfunktsioonide näited näitavad, kuidas määratleda kohandatud Power Fx-funktsioone teie testijuhtumites kasutamiseks. Funktsioon WaitUntilVisible kasutab DOM-i valijat, et oodata, kuni määratud juhtelement on nähtaval, kasutades Playwrighti toiminguid. Funktsioon GetOptions toob mudelipõhisest rakendusest (MDA) määratud juhtelemendi suvandid, kasutades Power Fx-juhtelementi. Need kohandatud funktsioonid suurendavad teie testimääratluste paindlikkust ja võimsust, võimaldades keerukamaid ja spetsiifilisemaid testistsenaariume.

BrowserConfiguration

Iga testSettings nõuab vähemalt ühte BrowserConfiguration.

Atribuut Tüüp Kirjeldus
browser string Nõutav. Brauser, mis käivitatakse testimisel. Peaks vastama Playwrighti toetatud brauseritele.
device string Valikuline. Seade, mida brauseri käivitamisel emuleeritakse. Peaks vastama Playwrighti toetatud seadmetele
screenHeight täisarv Valikuline. Brauseri käivitamisel kasutatava ekraani kõrgus. Kui see on määratud, screenWidth tuleb määrata ka.
screenWidth täisarv Valikuline. Brauseri käivitamisel kasutatav kuvalaius. Kui see on määratud, screenHeight tuleb määrata ka.

environmentVariables

Keskkonnaväärtustena saate talletada eri tüüpi väärtusi, kuid kõige levinum on identimisteabe talletamine koos kasutajate loendiga.

Kasutajad

Identimisteabe turvalise talletamise tagamiseks viitab testmääratlus kasutajatele, kes kasutavad i personaName. Identimisteabe talletamist testplaani failides ei toetata.

Näide:

environmentVariables:
    - users:
        - personaName: "User1"
          emailKey: "user1Email"
        - personaName: "User2"
          emailKey: "user2Email"

Seda personaName kasutatakse testimääratluse osana, et näidata, millise kasutajana testi käivitada.

Toetatud identimisteabe talletusmehhanismid

Identimisteabe salvestamiseks keskkonnamuutujatena saate need määrata järgmiselt.

# In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"

YAML-is tuleb määratleda kaks atribuuti, mis näitavad, et selle kasutaja identimisteave on talletatud keskkonnamuutujates.

  • emailKey: Kasutaja meilisõnumite talletamiseks kasutatav keskkonnamuutuja.

YAML-i näide:

    - personaName: "User1"
      emailKey: "user1Email"

PowerShelli näide KASUTAJA identimisteabe määramiseks YAML-i põhjal:

$env:user1Email = "someone@example.com"

Vt ka

Power Appsi testmootori ülevaade (eelversioon)
Power Appsi testmootori Power Fx funktsioonid (eelversioon)