Sdílet prostřednictvím


Power Apps Funkce testovacího enginu (náhled) Power Fx

Poznámka:

Funkce Preview nejsou určené pro normální používání a mohou mít omezené fungování. Jsou to funkce, které jsou poskytnuté před svým oficiálním vydáním, aby si je zákazníci mohli co nejdříve vyzkoušet a mohli nám napsat své názory.

Testovací engine používá tyto existující funkce PowerFx:

Tyto funkce jsou k dispozici pouze pro použití v testovacím enginu:

Testovací engine nabízí tyto náhledové funkce:

Funkce testovacího enginu

Tyto funkce lze použít pouze s testovacím enginem.

Snímek obrazovky

Screenshot(fileNameOfScreenshot)

Tato funkce pořídí snímek obrazovky aplikace v aktuálním časovém okamžiku. Soubor se snímkem obrazovky se uloží do složky s výstupem testu a pod zadaným názvem.

Poznámka:

Podporovány jsou pouze soubory jpeg a png.

Příklad obrazovky

Screenshot("buttonClicked.png")

Wait

Wait(Control, Property, Value)

Tato funkce čeká, až se vlastnost ovládacího prvku rovná zadané hodnotě.

Příklad čekání

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

Funkce náhledu

Následující funkce lze volitelně zahrnout do testů, pokud je použit jmenný prostor Power Fx Preview, přidáním Preview do seznamu allowPowerFxNamespaces ve vlastnosti extensionModules objektu testSettings.

Poznámka:

  • Funkce náhledu se mohou změnit. Jakmile budou tyto funkce připraveny pro širší použití, bude se uvažovat o jejich přesunu v rámci jmenného prostoru TestEngine .
  • Uživatelsky definované funkce můžete použít k obalení funkcí, čímž si usnadníte migraci na verze funkcí, které nejsou ve verzi Preview. Preview
  • Model by mohl vracet pouze objekt JSON, který byste mohli analyzovat pomocí funkce ParseJSON .

Náhled.AIExecutePrompt

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

Zavolejte vlastní výzvu a získejte textové výsledky spuštění. AI Builder

Poznámka:

Informace o dostupnosti a konfiguraci této funkce naleznete v části Dataverse Integrace AI .

Další podrobnosti a popisy použití této funkce naleznete v článku Použití Preview.AIExecutePrompt. ...

Příklad Preview.AIExecutePrompt

Následující příklad volá výzvu AI s názvem Hlavní město země s hodnotou parametru Země a očekává, že spuštění modelu vrátí jedno slovo Paříž

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

Náhled.Dialog souhlasu

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

Počkejte na potvrzení dialogového okna souhlasu pro vlastní stránku aplikace plátna nebo aplikace řízené modelem

Příklad Preview.ConsentDialog

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

Náhled.Pozastavení

Preview.Pause()

Pozastavit test a zobrazit Inspektor dramatiků pokud se spouští interaktivní test

Poznámka:

Známý problém: Funkce Preview.Pause neotevře správně inspektor pro testovací spuštění PAC.
Popis: Funkci Preview.Pause se nepodaří otevřít inspektor během příkazu pac test run.
Alternativní řešení: Pro funkci pozastavení lze použít open source verzi testovacího enginu.

Příklad Preview.Pause

Preview.Pause()

Náhled.VybratOvládání

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

Výběr ovládacího prvku pomocí modelu objektů dokumentu

Příklad Preview.SelectControl

Vyberte první shodu Button3

Preview.SelectControl(Button3,1);

Náhled.DramatikAkce

Preview.PlaywrightAction(Text, Text)

Provést akci na aktuální stránce pomocí lokátoru Playwright CSS nebo XPath

Příklady akcí Preview.Playwright

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

Náhled.HodnotaAkceDramatika

Preview.PlaywrightActionValue(Text, Text, Text)

Provedení akce na aktuální stránce pomocí lokátoru Playwright CSS nebo XPath Locator s hodnotou

Příklady hodnoty Preview.PlaywrightActionValue

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

Náhled.Script dramatika

Preview.PlaywrightScript(Text)

Spusťte skript C# na aktuální stránce

Poznámka:

Tato funkce je implementována pouze pro ladicí sestavení z open source verze Test Engine, nikoli v testovacím běhu PAC. ...

Příklad Preview.PlaywriterScript

Preview.PlaywrightScript("sample.csx")

S obsahem podobného tomuto kódu: 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')");
            }
        }
    }
}

Náhled.SimulaceConnector

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

Když je provedeno volání z Power Apps na typ konektoru nalezený v seznamu všech Power Apps konektorů

Příklad Preview.SimulateConnector

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

Náhled.SimulateDataverse

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

Příklad Preview.SimulateDataverse

V tomto příkladu, když je provedeno volání pro dotaz na entitu s logickým názvem Dataverse , vrátí záznamy pomocí funkce sample_combotableTable

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 a simulace konektorů s testovacím enginem (náhled)