Zdieľať cez


Testovanie rozšírení pomocou Test Engine (ukážka) Dataverse

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.

Tento článok vysvetľuje, ako vytvoriť integračné testy pomocou Dataverse. Táto funkcia využíva možnosť pripojenia k tabuľkám. Power Fx Dataverse

Pripája sa na platformu Dataverse

Ak chcete povoliť integráciu, pridajte parameter do súboru testSettings extensionModules: Dataverse enableDataverseFunctions......

testSettings:
  extensionModules:
    enable: true
    parameters:
      enableDataverseFunctions: true

Keď povolíte integráciu, musíte otvoriť rozhranie Azure CLI s používateľom alebo objektom služby, ktorý má práva na prostredie. Dataverse Dataverse Môžete použiť príkaz: az login Ďalšie informácie: prihláste sa pomocou Azure CLI.

URL rozhrania API používaná na integráciu sa získa buď z názvu hostiteľskej domény parametra spustenia testu pac, alebo definovaním premennej prostredia PowerShell s názvom named Dataverse . ...--domain...DATAVERSE_URL

Povoliť ukážku

V súčasnosti všetky Dataverse funkcie testovania rozšírení vyžadujú použitie funkcií ukážky. Ak ich chcete povoliť, pridajte Preview do allowPowerFxNamespaces zoznamu v extensionModules.

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview
    parameters:
      enableDataverseFunctions: true

Obnovenie aktuálneho stavu

Definujte obslužný program udalosti onTestCaseStart v autorizovanom testovacom súbore yaml, aby sa pred každým testovacím prípadom vykonali bežné akcie. Napríklad:

testSuite:
  testSuiteName: Dataverse tests
  testSuiteDescription: Validate Power Fx can be used to run Dataverse integration tests
  persona: User1
  appLogicalName: N/A
  onTestCaseStart: |
    = ForAll(Accounts, Remove(Accounts, ThisRecord))

V tomto príklade sa ForAll používa na iteráciu cez tabuľku a vykonanie akcie s každým záznamom. Funkcia Remove sa potom použije na odstránenie každého záznamu z tabuľky, aby sa pred vykonaním každého testu zabezpečila prázdna tabuľka.

Funkcie záujmu

Tieto funkcie sú užitočné pri práci s Dataverse:

  • Collect: Pridá záznamy do tabuľky.
  • CountRows: Vráti počet záznamov v tabuľke.
  • Prvý: Vráti prvý záznam v tabuľke.
  • ForAll: Iteruje cez tabuľku a vykoná akciu s každým záznamom.
  • Patch: Aktualizácia existujúceho záznamu.
  • Odstrániť: Odstráni konkrétny záznam z tabuľky.

Zváženia

Pri písaní krokov testovania zvážte tieto aspekty:

  • Predvolené hodnoty nie sú podporované. V dôsledku toho nie sú podporované príklady ako Power Fx . Patch(Accounts, Defaults(Accounts), {name:"test"})
  • Môžete použiť Collect ako alternatívu k Patch s funkciou Defaults

Spúšťanie testov Dataverse

Na spustenie testov, ktoré interagujú s Power Fx bez potreby rozhrania plátna alebo aplikácie riadenej modelom, môžete použiť poskytovateľapowerfx. Dataverse Toto je užitočné na testovanie obchodnej logiky, pluginov, postupov a iných backendových služieb.

pac test run `
   --provider powerfx `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value `
   --domain "https://contoso.crm.dynamics.com"

Integrácia umelej inteligencie

Použitie open source testovacieho enginu Power Apps kompilovaného v režime spolu s príslušnými nastaveniami testov umožní funkciu Debug Preview.AIExecutePrompt vo vašich testoch.

Pridajte do nastavení testovania nasledujúce položky, aby ste povolili integráciu AI:

testSettings:
  extensionModules:
    enable: true
    parameters:
      enableDataverseFunctions: true
      enableAIFunctions: true

Príklad použitia funkcie AI:

Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)