Del via


Power Apps Test Engine Power Fx Functions (forhåndsversjon)

Notat

Forhåndsversjonsfunksjonene er ikke ment for produksjonsbruk og kan ha begrenset funksjonalitet. Disse funksjonene er tilgjengelige før en offisiell utgivelse, slik at kunder kan få tidlig tilgang og gi tilbakemeldinger.

Testmotoren bruker disse eksisterende PowerFx-funksjonene:

Disse funksjonene er kun tilgjengelige for bruk i testmotoren:

Testmotoren har disse forhåndsvisningsfunksjonene:

Test motorfunksjoner

Disse funksjonene er kun tilgjengelige for bruk med testmotor

Skjermbilde

Screenshot(fileNameOfScreenshot)

Denne funksjonen tar et skjermbilde av appen på gjeldende tidspunkt. Skjermbildefilen lagres i testutdatamappen og med navnet oppgitt.

Notat

Bare jpeg- og png-filer støttes.

Eksempel på skjermbilde

Screenshot("buttonClicked.png")

Wait

Wait(Control, Property, Value)

Denne funksjonen venter på at egenskapen til kontrollen skal være lik den angitte verdien.

Eksempel på vent

Wait(Label1, "Text", "0")

Forhåndsvisning funksjoner

Følgende funksjoner kan eventuelt inkluderes i prøver når Power Fx navneområdet Forhåndsvisning legges til i PreviewallowPowerFxNamespaces listen i egenskapen extensionModules for testSettings.

Notat

  • Forhåndsvisningsfunksjoner kan endres. Etter hvert som disse funksjonene blir klare for bredere bruk, anses de å bevege seg innenfor TestEngine navneområdet.
  • Du kan bruke brukerdefinerte funksjoner til å bryte Preview funksjoner for å gjøre overføring til ikke-forhåndsvisningsversjoner av funksjonen enklere.
  • Du kan få modellen til bare å returnere et JSON-objekt som du kan analysere ved hjelp av ParseJSON funksjonen.

Forhåndsvisning.AIExecutePrompt

Preview.AIExecutePrompt(Name, {Property: Type})

Kall en egendefinert AI Builder ledetekst og få tekstresultater av utførelsen.

Notat

Se gjennom Dataverse delen AI-integrering for informasjon om tilgjengelighet og konfigurasjon av denne funksjonen.

Se gjennom Using Preview.AIExecutePrompt for mer informasjon og beskrivelser av bruk av denne funksjonen.

Eksempel på forhåndsvisning.AIExecutePrompt

Eksemplet nedenfor kaller AI-ledeteksten Land Capital med parameterverdien Land og forventer at modellkjøringen returnerer ett enkelt ord Paris

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

Forhåndsvisning.ConsentDialog

Preview.ConsentDialog(Table({Text: Text}));

Vent med å bekrefte en samtykkedialogboks for et lerretsprogram eller en egendefinert side for modelldrevet program

Eksempel på Preview.ConsentDialog

Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));

Forhåndsvisning.Pause

Preview.Pause()

Sett prøven på pause og vis Dramatikerinspektør hvis du kjører en interaktiv test

Notat

Kjent problem: Preview.Pause-funksjonen åpner ikke inspektøren for pac-testkjøring på riktig måte
Beskrivelse: Funksjonen Preview.Pause klarer ikke å åpne inspektøren under en pac test run.
Løsning: Åpen kildekode-versjonen av testmotoren kan brukes til pausefunksjonalitet.

Eksempel på Preview.Pause

Preview.Pause()

Forhåndsvisning.VelgKontroll

Preview.SelectControl(Control: ControlName, Index: Number)

Velge en kontroll ved hjelp av Document Object Model

Preview.SelectControl Eksempel

Velg første Button3 treff

Preview.SelectControl(Button3,1);

Forhåndsvisning.DramatikerHandling

Preview.PlaywrightAction(Text, Text)

Utfør en handling på gjeldende side ved hjelp av en dramatiker CSS eller XPath lokalisator

Forhåndsvisning.Eksempler på dramatikerHandling

Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");

Forhåndsvisning.PlaywrightActionValue

Preview.PlaywrightActionValue(Text, Text, Text)

Utfør en handling på gjeldende side ved hjelp av en dramatiker CSS eller XPath lokalisator med en verdi

Forhåndsvisning.PlaywrightActionValue-eksempler

Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");

Forhåndsvisning.PlaywrightScript

Preview.PlaywrightScript(Text)

Kjør C#-skriptet på gjeldende side

Notat

Denne funksjonen er bare implementert for feilsøkingsbygget fra åpen kildekode-versjonen av Test Engine som ikke er i pac-testkjøring.

Eksempel på forhåndsvisning.PlaywrightScript

Preview.PlaywrightScript("sample.csx")

Med innholdet i lignende sample.csx som denne koden:

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

#r "Microsoft.Playwright.dll"
#r "Microsoft.Extensions.Logging.dll"
using Microsoft.Playwright;
using Microsoft.Extensions.Logging;
using System.Linq;
using System.Threading.Tasks;

public class PlaywrightScript {
    public static void Run(IBrowserContext context, ILogger logger) {
        Execute(context, logger).Wait();
    }

    public static async Task Execute(IBrowserContext context, ILogger logger) {
        var page = context.Pages.First();

        if ( page.Url == "about:blank" ) {
            var nextPage = context.Pages.Skip(1).First();
            await page.CloseAsync();
            page = nextPage;
        }

        foreach ( var frame in page.Frames ) {
            if ( await frame.Locator("button:has-text('Button')").CountAsync() > 0 ) {
                await frame.ClickAsync("button:has-text('Button')");
            }
        }
    }
}

Forhåndsvisning.SimulateConnector

Preview.SimulateConnector({name: Text, then: Record})

Når et kall foretas fra Power Apps til en koblingstype som finnes fra Liste over alle Power Apps koblinger

Eksempel på Preview.SimulateConnector

Preview.SimulateConnector({
   name: "msnweather", 
   then: {responses: { 
      daily: { 
         day: { 
            summary: "You are seeing the mock response" }
            }
         }
      }
   })

Forhåndsvisning.SimulateDataverse

Preview.SimulateDataverse({Action: Text, Entity: Text, Then: Table})

Eksempel på Preview.SimulateDataverse

I dette eksemplet, når et kall foretas for å spørre Dataverse enheten med logisk navn sample_combotable , returnerer det oppføringene ved hjelp av tabellfunksjonen

Preview.SimulateDataverse({
    Action: "Query",
    Entity: "sample_combotable",
    Then: Table(
    {
        'sample_name': "Item 1",
        'sample_id': 3,
        'sample_combotableid': "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
        'createdon': "2024-12-02T17:52:45Z"
    },
    {
        'sample_name': "RR2",
        'sample_id': 4,
        'sample_combotableid': "bbbbbbbb-1111-2222-3333-cccccccccccc",
        'createdon': "2024-12-02T17:54:45Z"
    },
        {
        'sample_name': "RR3",
        'sample_id': 5,
        'sample_combotableid': "cccccccc-2222-3333-4444-dddddddddddd",
        'createdon': "2024-12-02T17:54:45Z"
    }
    )
});

Dataverse og koblingssimulering med testmotor (forhåndsversjon)