Test Dataverse-utvidelser med Testmotor (utdatert)

Notat

Testmotoren er avskrevet og vil bli fjernet i en fremtidig versjon. Bruk eksempler på Power Platform Playwright for testautomasjonsfunksjoner i Power Platform og Dynamics 365 tjenester.

Denne artikkelen forklarer hvordan du oppretter integrasjonstester med Dataverse. Denne funksjonaliteten bruker Power Fx-funksjonaliteten til å koble til Dataverse-tabellene.

Tilkobling til Dataverse

For å aktivere Dataverse integrering, legg til parameteren enableDataverseFunctions i testSettingsextensionModules :

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

Når du aktiverer dataversintegrering, må du åpne Azure CLI med en bruker eller tjenestekontohaver som har rettigheter til dataversmiljøet. Du kan bruke kommandoen: az-pålogging Mer informasjon: Signer med Azure CLI.

Dataverse API-URL-en som brukes til integrering, hentes enten fra vertsdomenenavnet til pac-testkjøringsparameteren--domain eller ved å definere en PowerShell-miljøvariabel med navnet DATAVERSE_URL.

Aktivere forhåndsvisning

For øyeblikket krever alle Dataverse utvidelsestestfunksjoner bruk av forhåndsvisningsfunksjoner. For å aktivere disse, legg til PreviewallowPowerFxNamespaces i listen i extensionModules.

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

Tilbakestiller gjeldende tilstand

Definer hendelsesbehandleren onTestCaseStart i den redigerte test-yamlen for å utføre vanlige handlinger før hver testsak. Eksempel:

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

I dette eksemplet brukes den ForAll til å iterere over en tabell og utføre en handling på hver post. Funksjonen Remove brukes deretter til å slette hver post fra en tabell for å sikre en tom tabell før hver test utføres.

Funksjoner av interesse

Disse funksjonene er nyttige når du arbeider med Dataverse:

  • Samle: Legger til poster i en tabell.
  • CountRows: Returnerer antall poster i en tabell.
  • Først: Returnerer den første posten i en tabell.
  • ForAll: Itererer over en tabell og utfører en handling på hver post.
  • Patch: Oppdater en eksisterende oppføring.
  • Fjern: Sletter en bestemt post fra en tabell.

Vurderinger

Ta hensyn til disse vurderingene når du skriver testtrinn:

  • Forhåndsinnstillinger støttes ikke. Som et resultat støttes ikke Power Fx-eksempler som Patch(Accounts, Defaults(Accounts), {name:"test"}).
  • Du kan bruke Collect til et alternativ til Patch med Defaults funksjonen

Kjører Dataverse tester

Du kan bruke Power Fx leverandøren (powerfx) til å kjøre tester som samhandler med Dataverse uten behov for et lerrets- eller modelldrevet appgrensesnitt. Dette er nyttig for testing av forretningslogikk, plugins, flyter og andre backend-tjenester.

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"

AI-integrasjon

Hvis du bruker åpen kilde Power Apps testmotor kompilert i Debug-modus sammen med de riktige testinnstillingene, aktiveres funksjonen Preview.AIExecutePrompt i testene.

Legg til følgende i testinnstillingene for å aktivere AI-integrering:

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

Eksempel på bruk av AI-funksjonen:

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