Dijeli putem


Power Apps Test Engine Power Fx Functions (pregled)

Napomena

Značajke pretpregleda nisu namijenjene u proizvodne svrhe i mogu imati ograničene funkcije. Te su značajke dostupne prije službenog izdavanja da bi se klijentima omogućio prijevremeni pristup i slanje povratnih informacija.

Testni motor koristi ove postojeće PowerFx funkcije:

Ove su funkcije dostupne samo za upotrebu u testnom motoru:

Testni modul pruža ove funkcije pretpregleda:

Ispitne funkcije motora

Ove su funkcije dostupne samo za upotrebu s testnim motorom

Snimka zaslona

Screenshot(fileNameOfScreenshot)

Ova funkcija snima snimku zaslona aplikacije u trenutnom trenutku. Datoteka snimke zaslona sprema se u testnu izlaznu mapu i s navedenim nazivom.

Napomena

Podržane su samo jpeg i png datoteke.

Primjer snimke zaslona

Screenshot("buttonClicked.png")

Čekati

Wait(Control, Property, Value)

Ova funkcija čeka da svojstvo kontrole bude jednako navedenoj vrijednosti.

Primjer čekanja

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

Funkcije pregleda

Sljedeće funkcije mogu se po želji uključiti u testove kada je prostor Power Fx naziva Preview dodavanjem Preview na allowPowerFxNamespaces popis u svojstvu extensionModules testSettings.

Napomena

  • Funkcije pretpregleda podložne su promjenama. Kako te funkcije postaju spremne za širu TestEngine upotrebu, smatra se da se kreću unutar imenskog prostora.
  • Korisnički definirane funkcije možete koristiti za omatanje Preview funkcija da biste olakšali migraciju na verzije funkcije koje nisu pretpregled.
  • Model bi mogao vratiti samo JSON objekt koji biste mogli raščlaniti pomoću funkcije ParseJSON .

Preview.AIExecutePrompt

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

Pozovite Custom AI Builder prompt i dobijete tekstualne rezultate izvršenja.

Napomena

Pregledajte odjeljak Integracija Dataverse umjetne inteligencije za informacije o dostupnosti i konfiguraciji ove funkcije.

Pregledajte Korištenje Preview.AIExecutePrompt za više pojedinosti i opise korištenja ove funkcije.

Preview.AIExecutePrompt Primjer

Sljedeći primjer poziva upit umjetne inteligencije pod nazivom Glavni grad zemlje s vrijednošću parametara Zemlja i očekuje da će izvršenje modela vratiti jednu riječ Pariz

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

Preview.ConsentDialog

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

Pričekajte da potvrdite dijaloški okvir za pristanak za prilagođenu stranicu aplikacije radnog područja ili aplikacije utemeljene na modelu

Primjer Preview.ConsentDialog

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

Pregled.Pauza

Preview.Pause()

Pauziranje testa i prikaz Inspektora dramaturga ako provodite interaktivni test

Napomena

Poznati problem:Pregled.Pauza funkcija ne otvara ispravno inspektor za pokretanje pac testa
Opis: funkcija Preview.Pause ne uspijeva otvoriti inspektor tijekom a pac test run.
Zaobilazno rješenje: open source verzija testnog motora može se koristiti za funkcionalnost pauziranja.

Primjer Preview.Pause

Preview.Pause()

Pregled.SelectControl

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

Odabir kontrole pomoću objektnog modela dokumenta

Pregled.SelectControl Primjer

Odaberite prvu Button3 utakmicu

Preview.SelectControl(Button3,1);

Pregled.PlaywrightAction

Preview.PlaywrightAction(Text, Text)

Izvršite radnju na trenutnoj stranici pomoću dramaturga CSS ili XPath lokatora

Preview.PlaywrightAction Primjeri

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

Preview.PlaywrightActionValue

Preview.PlaywrightActionValue(Text, Text, Text)

Izvršite radnju na trenutnoj stranici pomoću dramaturga CSS ili XPath lokatora s vrijednošću

Preview.PlaywrightActionValue – primjeri

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

Preview.PlaywrightScript

Preview.PlaywrightScript(Text)

Izvršite C# skriptu na trenutnoj stranici

Napomena

Ova funkcija je implementirana samo za Debug verziju iz open source verzije Test Enginea koja nije u pac test run.

Preview.PlaywrightScript primjer

Preview.PlaywrightScript("sample.csx")

Sa sadržajem sličnog sample.csx ovom kodu:

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

Preview.SimulateConnector

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

Kada se poziv upućuje s Power Apps na tip konektora koji se nalazi iz Popis svih Power Apps konektora

Primjer Preview.SimulateConnector

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

Preview.SimulateDataverse

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

Primjer Preview.SimulateDataverse

Ovaj primjer, kada se upućuje poziv za upit entitetu Dataverse s logičkim imenom sample_combotable , vraća zapise pomoću 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 i simulacija konektora s testnim modulom (pretpregled)