Del via


Om testprogramudbydere (prøveversion)

Test Engine bruger en udbyderbaseret arkitektur, der gør det muligt at understøtte test på tværs af forskellige applikationstyper. Hver udbyder er optimeret til en bestemt applikationstype, hvilket giver mulighed for effektiv testautomatisering og samtidig giver en ensartet testoplevelse.

Hvad er udbydere?

Udbydere er specialiserede moduler inden for Test Engine, der håndterer specifikationerne ved interaktion med forskellige applikationstyper:

  • De abstraherer kompleksiteten ved at teste forskellige applikationsteknologier
  • De giver mulighed for typespecifik gennemførelse af testaktiviteter
  • De håndterer godkendelse og kontekst korrekt for hver applikationstype
  • De bestemmer, hvordan test udføres og fortolkes

Typer af udbydere

I følgende afsnit beskrives de forskellige typer udbydere, der er tilgængelige i Test Engine. Hver udbyder er designet til et specifikt applikationsscenarie og tilbyder skræddersyede funktioner til webbaseret og API-baseret test.

Webbaserede udbydere

Webbaserede udbydere udvider Playwrights browserautomatiseringsfunktioner ved at tilføje applikationsspecifikke abstraktioner, hvilket gør det nemmere at teste webapplikationer uden at beskæftige sig med DOM-elementer på lavt niveau.

Udbyder af lærredprogram

Udbyderen af lærredprogrammer (canvas) er specialiseret til test Power Apps af lærredprogrammer:

  • Abstraktionsniveau: Fungerer med kontrolelementnavne som defineret i appudviklerstudiet
  • Teknologi: Udvider Playwright til browserbaseret automatisering
  • Vigtigste funktioner:
    • Får adgang til kontrolelementer til lærredapps efter logiske navne
    • Håndterer lærredspecifikke kontrolelementtyper og hændelser
    • Understøtter gallerikontrolnavigation og interaktion

Kommando Eksempel:

pac test run `
   --provider canvas `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value

Få mere at vide om test af lærredprogrammer.

Udbyder af modelbaserede programmer

Modelbaserede programudbydere (mda) er specialiseret til Dataverse modelbaserede programmer:

  • Abstraktionsniveau: Fungerer med modelbaserede programelementer som formularer, visninger og forretningsprocesforløb
  • Teknologi: Udvider Playwright til browserbaseret automatisering
  • Vigtigste funktioner:
    • Navigerer i komplekse modelbaserede appgrænseflader
    • Håndterer indtastning og validering af formulardata
    • Understøtter objektposthandlinger

Kommando Eksempel:

pac test run `
   --provider mda `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value `
   --domain "https://contoso.crm.dynamics.com/main.aspx?appid=00001111-aaaa-2222-bbbb-3333cccc4444&pagetype=entityrecord&etn=account"

Få mere at vide om test af modelbaserede programmer.

API-baserede udbydere

API-baserede udbydere interagerer direkte med backend-tjenester uden nødvendigvis at bruge en browsergrænseflade.

Power Fx Udbyder

Udbyderen Power Fx (powerfx) tillader direkte udførelse af Power Fx formler, der er nyttige til Dataverse integrationstest:

  • Godkendelse: Bruger tokens, der er OAuth hentet via Azure CLI az login command
  • Teknologi: Kalder Dataverse API-slutpunkter direkte
  • Vigtigste funktioner:
    • Udfører CRUD-handlinger på Dataverse tabeller
    • Udfører forretningslogik uden interaktion med brugergrænsefladen
    • Muliggør fokuseret integrationstest

Kommando Eksempel:

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"

Få flere oplysninger om test af Dataverse udvidelser.

Teknisk gennemførelse

I følgende afsnit forklares den underliggende arkitektur, godkendelsesflow og Dataverse integration for testprogramudbydere. Forståelse af disse oplysninger hjælper dig med at konfigurere og udvide udbydere til dine specifikke testbehov.

Arkitektur

Test Engines udbyderarkitektur følger en lagdelt tilgang:

  1. Core Engine Layer: Indeholder delt funktionalitet på tværs af alle udbydere
  2. Udbyderlag: Implementerer applikationsspecifik testlogik
  3. Godkendelseslag: Håndterer identitets- og sikkerhedskontekst
  4. Udvidelseslag: Gør det muligt at tilføje brugerdefineret funktionalitet

Godkendelsesflow

Udbydere bruger forskellige godkendelsesflows baseret på deres krav:

  • Webudbydere (lærred, modeldrevet): Brug browserbaseret godkendelse med lagertilstand
  • API-udbydere (Power Fx): Brug OAuth tokens fra Azure CLI til direkte API-adgang

Dataverse-integration

Alle udbydere kan drage fordel af Dataverse integration, hvilket muliggør:

  • Direkte bordadgang via Power Fx funktioner
  • Dataseeding og oprydningshandlinger
  • Verifikation af ændringer i backend-tilstand

Hvis du vil aktivere Dataverse integration, skal du føje følgende til dine testindstillinger:

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

Få flere oplysninger om, hvordan du tester Dataverse udvidelser

Valg af den rigtige udbyder

Vælg en udbyder baseret på din applikationstype og testkrav:

Programtype Provider Bedst til
Lærredapps canvas Test af brugergrænseflade, kontrolinteraktion, skærmnavigation
Modelbaserede apps mda Formularer, visninger, forretningsprocesforløb, objekthandlinger
Ren Dataverse integration powerfx Backend-logik, tabeloperationer, plugin-validering

Test lærredsapplikationer
Test modelbaserede applikationer
Test Dataverse udvidelser
Test af motorens forlængelighed
Testmotor og dramatiker