Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota
Las características en vista previa no se han diseñado para un uso de producción y pueden tener una funcionalidad restringida. Estas características están disponibles antes del lanzamiento oficial, para que los clientes puedan obtener acceso anticipado y proporcionar comentarios.
El motor de prueba utiliza estas funciones PowerFx existentes:
Estas funciones están disponibles para su uso únicamente en el motor de prueba:
El motor de pruebas proporciona estas funciones de vista previa:
- Vista previa.AIExecutePrompt
- Vista previa.Diálogo de consentimiento
- Vista previa.Pausa
- Vista previa. DramaturgoAcción
- Vista previa.PlaywrightActionValue
- Vista previa. Guión del dramaturgo
- Vista previa.SelectControl
- Vista previa.SimulateConnector
- Vista previa.SimulateDataverse
Funciones del motor de prueba
Estas funciones solo están disponibles para usarse con el motor de prueba
Captura de pantalla
Screenshot(fileNameOfScreenshot)
Esta función captura una captura de pantalla de la aplicación en el momento actual. El archivo de captura de pantalla se guarda en la carpeta de resultados de la prueba y con el nombre proporcionado.
Nota
Sólo se admiten archivos jpeg y png.
Ejemplo de captura de pantalla
Screenshot("buttonClicked.png")
Esperar
Wait(Control, Property, Value)
Esta función espera a que la propiedad del control sea igual al valor especificado.
Ejemplo de tiempo de espera
Wait(Label1, "Text", "0")
Funciones de vista previa
Las siguientes funciones se pueden incluir opcionalmente en las pruebas cuando se agrega el espacio de nombres Power Fx Vista previa Preview a la lista en la propiedad allowPowerFxNamespaces extensionModules de testSettings .
Nota
- Las funciones de vista previa están sujetas a cambios. A medida que estas funciones estén listas para un uso más amplio, se considerará que se mueven dentro del espacio de nombres.
TestEngine - Puede utilizar funciones definidas por el usuario para encapsular funciones y facilitar la migración a versiones que no sean de vista previa de la función.
Preview - Podrías hacer que el modelo solo devuelva un objeto JSON que puedas analizar usando la función
ParseJSON.
Vista previa.AIExecutePrompt
Preview.AIExecutePrompt(Name, {Property: Type})
Llame a un indicador AI Builder personalizado y obtenga los resultados de texto de la ejecución.
Nota
Revise la sección Dataverse Integración de IA para obtener información sobre la disponibilidad y configuración de esta función.
Revise Uso de Preview.AIExecutePrompt para obtener más detalles y descripciones sobre el uso de esta función.
Ejemplo de Preview.AIExecutePrompt
El siguiente ejemplo llama al indicador de IA llamado Capital del país con un valor de parámetros de País y espera que la ejecución del modelo devuelva una sola palabra París
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)
Vista previa.Diálogo de consentimiento
Preview.ConsentDialog(Table({Text: Text}));
Espere para confirmar un cuadro de diálogo de consentimiento para una aplicación de lienzo o una página personalizada de una aplicación basada en modelos
Ejemplo de Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));
Vista previa.Pausa
Preview.Pause()
Pausa la prueba y muestra el Inspector de dramaturgos si se está ejecutando una prueba interactiva
Nota
Problema conocido:: La función Vista previa.Pausa no abre correctamente el inspector para la ejecución de pruebas de pac
Descripción: La Preview.Pause función no puede abrir el inspector durante una pac test run.
Solución alternativa: La versión de código abierto del motor de pruebas se puede utilizar para la funcionalidad de pausa.
Ejemplo de vista previa.Pausa
Preview.Pause()
Vista previa.SelectControl
Preview.SelectControl(Control: ControlName, Index: Number)
Seleccionar un control utilizando el Modelo de objeto de documento
Ejemplo de vista previa.SelectControl
Seleccione la primera coincidencia Button3
Preview.SelectControl(Button3,1);
Vista previa. DramaturgoAcción
Preview.PlaywrightAction(Text, Text)
Ejecutar una acción en la página actual usando un Playwright o un Localizador CSS XPath
Vista previa.Ejemplos de acción del dramaturgo
Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");
Vista previa.PlaywrightActionValue
Preview.PlaywrightActionValue(Text, Text, Text)
Ejecutar una acción en la página actual usando un Playwright CSS o un XPath Locator con un valor
Ejemplos de valores de acción de PlaywrightActionValue
Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");
Vista previa. Guión del dramaturgo
Preview.PlaywrightScript(Text)
Ejecutar el script de C# en la página actual
Nota
Esta función solo se implementa para la compilación de depuración de la versión de código abierto de Test Engine, no en la ejecución de prueba de pac .
Vista previa.Ejemplo de guión de dramaturgo
Preview.PlaywrightScript("sample.csx")
Con un contenido similar a este código: 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')");
}
}
}
}
Vista previa.SimulateConnector
Preview.SimulateConnector({name: Text, then: Record})
Cuando se realiza una llamada desde Power Apps a un tipo de conector encontrado en la Lista de todos los Power Apps conectores
Ejemplo de vista previa.SimulateConnector
Preview.SimulateConnector({
name: "msnweather",
then: {responses: {
daily: {
day: {
summary: "You are seeing the mock response" }
}
}
}
})
Vista previa.SimulateDataverse
Preview.SimulateDataverse({Action: Text, Entity: Text, Then: Table})
Ejemplo de vista previa.SimulateDataverse
En este ejemplo, cuando se realiza una llamada para consultar la entidad con nombre lógico, devuelve los registros utilizando la función Tabla. Dataverse sample_combotable...
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"
}
)
});
Artículos relacionados
Dataverse y simulación de conectores con motor de pruebas (vista previa)