Power Apps Test Engine Power Fx Functions (zastarele)

opomba,

Test Engine je zastarel in bo odstranjen v prihodnji izdaji. Uporabite Power Platform Playwright vzorce za zmogljivosti avtomatizacije testiranja v Power Platform in Dynamics 365 storitvah.

Testni mehanizem uporablja te obstoječe funkcije PowerFx:

Te funkcije so na voljo samo za uporabo v testnem mehanizmu:

Testni mehanizem ponuja te funkcije predogleda:

Funkcije testnega motorja

Te funkcije so na voljo samo za uporabo s testnim mehanizmom.

Posnetek zaslona

Screenshot(fileNameOfScreenshot)

Ta funkcija zajame posnetek zaslona aplikacije v trenutnem trenutku. Datoteka posnetka zaslona se shrani v mapo s testnimi izhodi in z navedenim imenom.

opomba,

Podprte so samo datoteke jpeg in png.

Primer posnetka zaslona

Screenshot("buttonClicked.png")

Počakajte

Wait(Control, Property, Value)

Ta funkcija čaka, da lastnost kontrolnika doseže podano vrednost.

Primer čakanja

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

Funkcije predogleda

Naslednje funkcije je mogoče po želji vključiti v teste, ko je imenski prostor Power Fx Preview, tako da dodate Preview na seznam allowPowerFxNamespaces v lastnosti extensionModules nastavitve testSettings.

opomba,

  • Funkcije predogleda se lahko spremenijo. Ko bodo te funkcije pripravljene za širšo uporabo, se šteje, da se bodo premaknile znotraj imenskega prostora. TestEngine
  • Z uporabniško definiranimi funkcijami lahko zavijete funkcije, da olajšate selitev na različice funkcij, ki niso predogledne. Preview
  • Model bi lahko vrnil samo objekt JSON, ki bi ga lahko razčlenili s funkcijo ParseJSON .

Predogled.AIExecutePrompt

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

Pokličite Custom AI Builder prompt in pridobite besedilne rezultate izvajanja.

opomba,

Za informacije o razpoložljivosti in konfiguraciji te funkcije si oglejte razdelek Dataverse Integracija umetne inteligence .

Za več podrobnosti in opise uporabe te funkcije glejte poglavje Uporaba funkcije Preview.AIExecutePrompt. ...

Primer predogleda.AIExecutePrompta

Naslednji primer pokliče poziv umetne inteligence z imenom Glavno mesto države z vrednostjo parametra Država in pričakuje, da bo izvedba modela vrnila eno besedo Pariz

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

Predogled.DialogSoglasja

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

Počakajte na potrditev pogovornega okna za soglasje za aplikacijo s platnom ali stran po meri aplikacije, ki temelji na modelu

Primer pogovornega okna Preview.ConsentDialog

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

Predogled.Začasna ustavitev

Preview.Pause()

Začasno ustavi test in prikaži Inšpektorja dramatikov če izvajate interaktivni test

opomba,

Znana težava: Funkcija Preview.Pause ne odpre inšpektorja pravilno za preizkus pac.
Opis: Funkciji Preview.Pause ne uspe odpreti inšpektorja med pac test run.
Workaround: open source različica testnega pogona se lahko uporablja za funkcionalnost pavze.

Primer predogleda.začasne zaustavitve

Preview.Pause()

Predogled.IzberiKontrolo

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

Izberite kontrolnik z uporabo modela objektov dokumenta

Primer predogleda.SelectControl

Izberite prvo ujemanje Button3

Preview.SelectControl(Button3,1);

Predogled.DramatikAkcija

Preview.PlaywrightAction(Text, Text)

Izvedite dejanje na trenutni strani z uporabo lokatorja Playwright ali Playwriters CSS XPath

Primeri akcij predogleda.dramatika

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

Predogled.VrednostAkcijeDramatika

Preview.PlaywrightActionValue(Text, Text, Text)

Izvedi dejanje na trenutni strani z uporabo Playwright CSS ali XPath Locator z vrednostjo

Primeri vrednosti dejanja predogleda Playwright

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

Predogled.SkriptaDramatika

Preview.PlaywrightScript(Text)

Izvedi skript C# na trenutni strani

opomba,

Ta funkcija je implementirana le za Debug različico iz open source različice Test Engine, ki ni v pac test run.

Primer skripta Preview.Playwriter

Preview.PlaywrightScript("sample.csx")

Z vsebino, podobno tej kodi: sample.csx

// 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')");
            }
        }
    }
}

Predogled.SimulirajPriključek

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

Ko se kliče iz Power Apps v tip konektorja, najdemo iz Seznam vseh Power Apps konektorjev

Primer Preview.SimulateConnector

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

Predogled.SimulateDataverse

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

Primer predogleda.SimulateDataverse

V tem primeru, ko se izvede klic za poizvedbo po entiteti Dataverse z logičnim imenom sample_combotable , se zapisi vrnejo z uporabo funkcije Table

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 in simulacija konektorjev z testnim pogonom (zastarela)