Partekatu bidez


Power Apps Test Engine-ren YAML formatua (aurrebista)

Oharra

Aurrebista-eginbideak ez daude ekoizpenerako diseinatuta, eta funtzionalitate murriztua izan dezakete. Eginbide horiek kaleratze ofiziala baino lehen dauden erabilgarri, bezeroek atzitu eta beren oharrak eman ditzaten.

Probak YAML-n definitzen dira, Power Fx-en jarraibide berberak jarraituz. Informazio gehiago Power Fx YAML formularen gramatikari buruz.

Ikusi PowerApps-TestEngine/samples karpeta adibide zehatzak lortzeko.

YAML eskemaren definizioak

Propietateak Deskribapena
test-suitea Proba-multzo bat, proba-multzoko proba-kasuak eta proba-multzoaren konfigurazio espezifikoak definitzen ditu
Probaren ezarpenak Proba-multzoaren ezarpenak definitzen ditu, proba-kasu anitzetan berrerabiltzen direnak
Ingurune-aldagaiak Aplikazioa ingurune desberdinetan eraman ahala alda daitezkeen aldagaiak definitzen ditu

test-suitea

Proba bat definitzeko erabiltzen da.

Propietateak Mota Deskribapena
persona kate Beharrezkoa. Proba egiteko saioa hasi duen erabiltzailea. Erabiltzaileak atalean zerrendatutako pertsonaia batekin bat etorri behar du.
testCases Proba-kasuak Beharrezkoa. Proba-multzoko proba-kasuak definitzen ditu. Proba-multzoetan dauden proba-kasuak sekuentzialki exekutatzen dira. Aplikazioaren egoera suite bateko proba kasu guztietan mantentzen da.
testSuiteName kate Beharrezkoa. Azterketa-gelaren izena.
appLogicalName kate Aukerakoa. Abiarazi beharreko aplikazioaren izen logikoa. Irtenbidetik lor daiteke. Oihalezko aplikazioetarako, irtenbide bati gehitu behar diozu hura lortzeko. Ikusi nola identifikatu zure aplikazioa azterketa-planean
appId Guid-a Aukerakoa. Abiarazi beharreko aplikazioaren IDa. Beharrezkoa da eta ez dagoenean appLogicalName bakarrik erabiltzen da. Aplikazioaren IDa irtenbidean ez dauden oihaleko aplikazioetarako soilik erabili behar da. Ikusi nola identifikatu zure aplikazioa azterketa-planean
networkRequestMocks NetworkRequestMocks Aukerakoa. Probarako beharrezkoak diren sareko eskaeren maketak definitzen ditu.
onTestCaseComplete kate Aukerakoa. Suite bateko proba-kasu bakoitzerako abiarazi beharreko urratsak definitzen ditu kasua exekutatzen amaitu ondoren.
onTestCaseStart kate Aukerakoa. Suite bateko proba-kasu bakoitzerako abiarazi beharreko urratsak definitzen ditu kasua exekutatzen hasi aurretik.
onTestSuiteComplete kate Aukerakoa. Suitea exekutatzen amaitu ondoren abiarazi beharreko urratsak definitzen ditu.
testSuiteDescription kate Aukerakoa. Informazio gehigarriak proba suiteak zer egiten duen azaltzen du.

Nola identifikatu zure aplikazioa azterketa planean

Zure aplikazioa identifikatu appLogicalNameappId edo identifikatu behar duzu. Zure aplikazioa irtenbide baten barruan definituta dagoen ala ez araberakoa da.

Zure aplikazioak irtenbideen barruan definitzen dituzunean, zure probak eramangarriak izaten jarraitzen dute ingurune guztietan. Ezarri propietatea appLogicalName aplikazioa irtenbidean oinarrituta dagoela adierazteko.

Aplikazioaren izen logikoa aurkitzeko:

  1. Ireki zure aplikazioa duen irtenbidea Power Apps-en
  2. Erabili izena (ez bistaratze-izena) zerrendan. Izenaren balioak irtenbidearen argitaratzailearen pertsonalizazio-aurrizkia barne hartzen du.

Aplikazio autonomoak

Zure aplikazioa irtenbide baten barruan definituta ez dagoenean, propietatea appId erabili behar duzu.

Aplikazioaren IDa aurkitzeko:

  1. Lokalizatu aplikazioa Power Apps-en zerrendan
  2. Ireki Xehetasunak eta kontuan hartu aplikazioaren IDaren GUID

NetworkRequestMocks

Propietateak Mota Deskribapena
requestURL kate Beharrezkoa. Erantzun faltsua jasotzen duen eskaeraren URLa. Globo ereduak onartzen dira
responseDataFile kate Beharrezkoa. Erantzun faltsuaren edukia duen testu-fitxategia. Fitxategi honetako testu guztia erantzun gisa irakurtzen da
headers matrize Aukerakoa. Eskaeraren goiburuko eremuen zerrenda [fieldName: fieldValue] formatuan
method kate Aukerakoa. Eskaeraren metodoa (GET, POST, etab.)
requestBodyFile kate Aukerakoa. Eskaeraren gorputza duen testu-fitxategia. Fitxategi honetako testu guztia eskaeraren gorputz gisa irakurtzen da

Aukerako propietateen kasuan, baliorik zehazten ez bada, bideratze guztiei aplikatuko zaie. Adibidez, nulua bada method , erantzun faltsua bidaltzen dugu metodoa edozein dela ere, betiere beste propietate guztiak bat datozenak.

Sharepoint/Dataverse/Connector aplikazioetarako, requestURL eta method eskaera guztietarako berdina izan daiteke. x-ms-request-method eta x-ms-request-url in goiburuak konfiguratu beharko lirateke kasu horretan eskaera desberdinak identifikatzeko.

Proba-kasuak

Propietateak Mota Deskribapena
testCaseName kate Beharrezkoa. Arrakastaren eta porrotaren berri emateko erabiltzen den proba-kasuaren izena
testSteps Proba-urratsak Beharrezkoa. Power Fx funtzio multzoa, proba kasua egiteko beharrezkoak diren urratsak deskribatzen dituena. Ikusi TestSteps-en adibidea
testCaseDescription Ez Aukerakoa. Informazio gehigarriak test-kasuak zer egiten duen azaltzen du

Proba-urratsak

  • TestSteps Lehendik dauden Test Engine Power Fx funtzioak , funtzioak edo esparru honek definitutako proba-funtzio espezifikoak erabil ditzake.
  • Balioa kanalizazio ikurrarekin hasi behar da (|) lerro anitzeko YAML adierazpenak ahalbidetzeko, eta ondoren berdin (=) ikurra Power Fx adierazpena dela adierazteko
  • Funtzioak puntu eta komaz bereizi behar dira (;).
  • Iruzkinak erabil daitezke eta atzera-barra bikoitzarekin hasi beharko lirateke (//).

TestSteps-en adibidea

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");

Probaren ezarpenak

Proba-planoko proben ezarpenak definitzeko erabiltzen da.

Propietateak Mota Deskribapena
browserConfigurations Nabigatzailearen konfigurazioa[aldatu | aldatu iturburu kodea] Beharrezkoa. Probatu beharreko arakatzailearen konfigurazioen zerrenda. Gutxienez nabigatzaile bat zehaztu behar da.
extensionModules luzapen-moduluak Aukerakoa. Gaitu beharreko luzapenei buruzko datuak ditu.
filePath kate Aukerakoa. Probako ezarpen guztiak dituen yaml fitxategi bereizi baterako fitxategiaren bide-izena. Ematen bada, proba-planeko proba-ezarpen guztiak gainidatziko ditu.
headless boolearra Aukerakoa. Lehenetsia egia da. False gisa ezartzen bada, nabigatzailea agertuko da probaren exekuzioan.
locale kate Aukerakoa. Proba-kasuak edo proba-urratsak idazten diren lokal/kultura sintaxia. Zehaztu gabe, CultureInfo.CurrentCulture lehenespenez lokalaren arabera erabiltzen da proba-urratsak analizatzeko. Ikus eskualde eta hizkuntza kontuak
recordVideo boolearra Aukerakoa. Lehenetsitakoa faltsua da. Egia ezartzen bada, probaren bideo-grabazioa harrapatuko da.
timeout osoko zenbakia Aukerakoa. Denbora-mugaren balioa (milisegundotan). Lehenetsia 30.000 milisegundokoa (30s) da. Eragiketa batek denbora-muga baino denbora gehiago irauten badu, proba huts eginez amaitzen da.
powerFxTestTypes name value bikotea Aukerakoa. Motaren izenen eta Power Fx moten definizioen zerrenda. Ikusi powerFxTestTypes adibidea
testFunctions description code bikotea Aukerakoa. Deskribapenen eta Power Fx funtzioen definizioen zerrenda. Ikus testFunctions adibidea

luzapen-moduluak

Gaitu beharreko luzapenei buruzko datuak ditu.

Propietateak Mota Deskribapena
enable Bool Hedapen-moduluak gaituta dauden ala ez adierazten du.
allowPowerFxNamespaces zerrenda Gaitu beharreko PowerFx izen-espazioen zerrenda.
parameters Gako-balioen bikoteak Hedapen-moduluak kontrolatzeko balioak dituzten propietateak. Une honetan, parametro boolearra enableDataverseFunctions soilik balio du horretarako.

Adibide honek PowerFx Preview izen-espazioa nola gaitu erakusten du:

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

Aurrebistaren funtzioei buruzko informazio gehiago

Eskualde eta hizkuntza kontuak

Test Engine-k hainbat hizkuntza eta eskualde ezarpen onartzen ditu, hala nola hamartar eta zerrenda bereizleak. Propietateak testSettings.locale jarrera horiek kontrolatzen ditu. Informazio gehiago nahi izanez gero, ikus Laguntza orokorra Microsoft Power Fx-en.

Begiratu konfigurazio adibide hauek PowerApps-TestEngine GitHub biltegian:

powerFxTestTypes adibidea

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

Adibide honek Power Fx mota pertsonalizatuak nola definitu erakusten du proba-kasuetan erabiltzeko. Mota ControlName eremu bakarreko Text erregistro gisa definitzen da, eta Options mota erregistroen taula gisa definitzen da, eta horietako bakoitzak mota Name bateko eremu bat Text eta motako Valueeremu bat Number ditu. Mota pertsonalizatuak proba eszenatoki konplexuagoak eta zehatzagoak sortzeko erabil daitezke, zure proben definizioen malgutasuna eta indarra hobetuz.

testFunctions adibidea

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);

Proba-funtzioen adibide hauek Power Fx funtzio pertsonalizatuak nola definitu erakusten dute zure proba-kasuetan erabiltzeko. Funtzioak WaitUntilVisible DOM hautatzailea erabiltzen du zehaztutako kontrol bat ikusgai egon arte itxaroteko, Playwright-en ekintzak erabiliz. GetOptions funtzioak zehaztutako kontrol baten aukerak berreskuratzen ditu Model Driven App (MDA) batetik, Power Fx kontrola erabiliz. Funtzio pertsonalizatu hauek zure proben definizioen malgutasuna eta indarra hobetzen dituzte, proba eszenatoki konplexuagoak eta zehatzagoak ahalbidetuz.

Nabigatzailearen konfigurazioa

Azterketa bakoitzak gutxienez bat BrowserConfigurationeskatzen du.

Propietateak Mota Deskribapena
browser kate Beharrezkoa. Proba egitean abiarazi beharreko nabigatzailea. Playwright-ek onartzen dituen arakatzaileekin bat etorri behar du.
device kate Aukerakoa. Nabigatzailea abiaraztean emulatu beharreko gailua. Playwright-ek onartzen dituen gailuekin bat etorri behar du
screenHeight osoko zenbakia Aukerakoa. Arakatzailea abiaraztean erabili beharreko pantailaren altuera. Zehaztuz gero, screenWidth zehaztu egin behar da.
screenWidth osoko zenbakia Aukerakoa. Arakatzailea abiaraztean erabiliko den pantailaren zabalera. Zehaztuz gero, screenHeight zehaztu egin behar da.

Ingurune-aldagaiak

Balio mota desberdinak gorde ditzakezu ingurumen-balio gisa, baina kasurik ohikoena kredentzialen informazioa erabiltzaileen zerrenda batekin gordetzea da.

erabiltzaileak

Kredentzialak modu seguruan gordetzen direla ziurtatzeko, testaren definizioak erabiltzaileei erreferentzia egiten die personaName. Kredentzialak proba-planaren fitxategietan gordetzea ez da onartzen.

Adibidea:

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

The probaren personaName definizioaren zati gisa erabiltzen da proba zein erabiltzailetan exekutatu behar den adierazteko.

Onartutako kredentzialak biltegiratzeko mekanismoak

Kredentzialak ingurune-aldagai gisa gordetzeko, honela ezar ditzakezu:

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

YAMLn, bi propietate definitu behar dira erabiltzaile honen kredentzialak ingurune-aldagaietan gordetzen direla adierazteko:

  • emailKey: Erabiltzailearen posta elektronikoa gordetzeko erabiltzen den ingurune-aldagaia.

YAML adibidea:

    - personaName: "User1"
      emailKey: "user1Email"

PowerShell-en adibidea, YAML-en oinarritutako erabiltzaileen kredentzialak ezartzeko:

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

Ikus ere

Power Apps Test Engine-ren ikuspegi orokorra (aurrebista)
Power Apps Proba Motorraren funtzioak (aurrebista) Power Fx