Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
Nota
Test Engine està obsolet i serà eliminat en una versió futura. Utilitza Power Platform Playwright per a capacitats d'automatització de proves en Power Platform i serveis Dynamics 365.
El motor de prova utilitza aquestes funcions PowerFx existents:
Aquestes funcions només es poden utilitzar al motor de proves:
El motor de proves proporciona aquestes funcions de visualització prèvia:
- Preview.AIExecutePrompt
- Preview.ConsentDialog
- Vista prèvia.Pausa
- Preview.PlaywrightAction
- Vista prèvia.PlaywrightActionValue
- Vista prèvia.PlaywrightScript
- Preview.SelectControl
- Preview.SimulateConnector
- Preview.SimulateDataverse
Proveu les funcions del motor
Aquestes funcions només estan disponibles per utilitzar-les amb el motor de proves
Captura de pantalla
Screenshot(fileNameOfScreenshot)
Aquesta funció captura una captura de pantalla de l'aplicació en el moment actual. El fitxer de captura de pantalla es desa a la carpeta de sortida de la prova i amb el nom proporcionat.
Nota
Només s'admeten fitxers jpeg i png.
Exemple de captura de pantalla
Screenshot("buttonClicked.png")
Esperar
Wait(Control, Property, Value)
Aquesta funció espera que la propietat del control sigui igual al valor especificat.
Exemple d'espera
Wait(Label1, "Text", "0")
Funcions de visualització prèvia
Les funcions següents es poden incloure opcionalment a les proves quan l'espai de noms Preview s'afegeix a la Power Fx llista a la propietat extensionModules Preview de testSettings allowPowerFxNamespaces... . ...
Nota
- Les funcions de visualització prèvia estan subjectes a canvis. A mesura que aquestes funcions estan preparades per a un ús més ampli, es considera que es mouen dins de l'espai de
TestEnginenoms. - Podeu utilitzar funcions definides per l'usuari per embolicar
Previewfuncions per facilitar la migració a versions no visualitzades de la funció. - Podríeu fer que el model només retornés un objecte JSON que podríeu analitzar mitjançant la
ParseJSONfunció.
Preview.AIExecutePrompt
Preview.AIExecutePrompt(Name, {Property: Type})
Crida un Custom AI Builder prompt i obtén els resultats de text de l'execució.
Nota
Reviseu la secció Integració Dataverse d'IA per obtenir informació sobre la disponibilitat i la configuració d'aquesta funció.
Reviseu Ús de Preview.AIExecutePrompt per obtenir més detalls i descripcions sobre l'ús d'aquesta funció.
Exemple de Preview.AIExecutePrompt
L'exemple següent crida a la sol·licitud d'IA anomenada Country Capital amb un valor de paràmetres de Country i espera que l'execució del model retorni una sola paraula Paris
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)
Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: Text}));
Espereu per confirmar un diàleg de consentiment per a una pàgina personalitzada d'aplicació de llenç o d'aplicació basada en models
Exemple de Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));
Vista prèvia.Pausa
Preview.Pause()
Posa en pausa la prova i mostra l'inspector de dramaturgs si executes una prova interactiva
Nota
Problema conegut: Preview.Pause function no obre correctament l'inspector per a l'execució de la prova pac
Descripció: La Preview.Pause funció no obre l'inspector durant un pac test run.
Solució alternativa: La versió open source del Motor de Proves es pot utilitzar per a la funcionalitat de pausa.
Exemple de Preview.Pause
Preview.Pause()
Preview.SelectControl
Preview.SelectControl(Control: ControlName, Index: Number)
Seleccioneu un control mitjançant el model d'objectes del document
Exemple de Preview.SelectControl
Selecciona la primera Button3 coincidència
Preview.SelectControl(Button3,1);
Preview.PlaywrightAction
Preview.PlaywrightAction(Text, Text)
Executar una acció a la pàgina actual mitjançant un dramaturg CSS o XPath un localitzador
Preview.PlaywrightExemples d'acció
Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");
Vista prèvia.PlaywrightActionValue
Preview.PlaywrightActionValue(Text, Text, Text)
Executar una acció a la pàgina actual utilitzant un dramaturg CSS o XPath un localitzador amb un valor
Exemples de Preview.PlaywrightActionValue
Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");
Vista prèvia.PlaywrightScript
Preview.PlaywrightScript(Text)
Executar l'script de C# a la pàgina actual
Nota
Aquesta funció només s'implementa per a la compilació de depuració des d'open source versió del Test Engine que no està en pac test run.
Exemple de Preview.PlaywrightScript
Preview.PlaywrightScript("sample.csx")
Amb el contingut de l'similar sample.csx a aquest codi:
// 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})
Quan es fa una trucada des de Power Apps a un tipus de connector que es troba de Llista de tots els connectors Power Apps
Exemple de 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})
Exemple de Preview.SimulateDataverse
En aquest exemple, quan es fa una crida per consultar l'entitat Dataverse amb nom sample_combotable lògic, retorna els registres mitjançant la funció 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"
}
)
});