Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
Nota
Les característiques de visualització prèvia no estan dissenyades per a un entorn de producció i poden tenir una funcionalitat restringida. Aquestes característiques estan disponibles abans d’un llançament oficial de producte per tal que els clients el puguin utilitzar abans i enviar-nos els seus comentaris.
Informació general
Power Apps Test Engine compta amb un marc d'extensibilitat robust que permet ampliar les capacitats de prova bàsiques a través de diversos punts d'extensió. Aquest article explica:
- Com Microsoft signa i valida les extensions pròpies
- Com funciona el model d'extensibilitat mitjançant el marc d'extensibilitat administrat (MEF)
- Opcions perquè les organitzacions creïn les seves pròpies extensions
Components signats per Microsoft
Important
Durant la fase de visualització prèvia pública, l'ordre pac test run només carrega extensions signades per Microsoft. Aquest disseny garanteix la seguretat, l'estabilitat i el rendiment de la plataforma Test Engine.
Microsoft crea, signa i valida components propis per assegurar-se que compleixen els estàndards de qualitat i seguretat. Aquests components inclouen:
- Proveïdors d'autenticació bàsica
- Proveïdors d'aplicacions basades en models i aplicacions de llenç
- Funcions i accions estàndard Power Fx
Marc d'extensibilitat (MEF)
El motor de proves utilitza el marc d'extensibilitat administrat (MEF) per habilitar una arquitectura connectable. Aquest marc permet tres tipus principals d'extensions:
Extensions d'autenticació
Les extensions d'autenticació permeten diferents maneres d'autenticar-se amb Power Platform:
- Autenticació de l'estat d'emmagatzematge: el mètode d'autenticació predeterminat basat en navegador
- Autenticació basada en certificats: per a l'execució de proves no interactives
- Proveïdors d'autenticació personalitzats : per a escenaris d'autenticació especialitzats
Per obtenir més informació, vegeu Autenticació al motor de proves.
Extensions de proveïdor
Les extensions del proveïdor permeten provar diferents tipus d'aplicacions:
- Proveïdor d'aplicacions de llenç: per provar Power Apps aplicacions de llenç
- Proveïdor d'aplicacions basades en models: per provar Dataverse aplicacions basades en models
- Power Fx Proveïdor : per executar declaracions Power Fx de manera independent
- Proveïdor del portal: per automatitzar les operacions en Power Apps
Per obtenir més informació, vegeu Aplicacions de llenç, Aplicacions basades en models i Dataverse Extensions.
Power Fx Extensions
Power Fx Les extensions afegeixen noves capacitats de prova mitjançant funcions personalitzades:
- Funcions definides per l'usuari: funcions de codi baix definides al pla de prova
- Implementacions de C# ReflectionFunction: funcions personalitzades implementades en mòduls de C#
Per obtenir més informació, vegeu Power Fx Funcions i implementacions de ReflectionFunction de C#.
Opcions de desenvolupament d'extensions
Les organitzacions tenen diverses opcions per ampliar el motor de proves:
Utilitzant la versió de codi obert
El Power Apps motor de proves està disponible com a projecte de codi obert sota la llicència MIT. Els equips de Microsoft, de tercers i les organitzacions poden:
- Crear nous proveïdors per a escenaris de proves especialitzades
- Desenvolupar mecanismes d'autenticació personalitzats
- Crear noves implementacions de C# ReflectionFunction
- Crear mòduls que ampliïn la funcionalitat bàsica
- Enviar contribucions per a la seva consideració en el producte principal
Power Fx Funcions definides per l'usuari
Per a escenaris més senzills, podeu crear funcions definides per l'usuari directament als vostres plans de prova:
testSuite:
testCases:
- testCaseName: "Test with custom functions"
userDefineFunctions:
- name: "FormatDateString"
parameters: [date]
expression: "Text(date, 'yyyy-MM-dd')"
steps:
# Use the custom function in your test steps
- action: PowerFxTestStep
expression: FormatDateString(Now())
Funcions de C# Power Fx personalitzades amb ReflectionFunction
Per a escenaris més complexos, les organitzacions poden desenvolupar funcions de C# personalitzades implementant la ReflectionFunction classe i registrant-les mitjançant un mòdul:
// Define your function class
public class SampleFunction : ReflectionFunction
{
public SampleFunction() : base(DPath.Root.Append(new DName("Preview")), "Sample", FormulaType.Blank)
{
}
public BlankValue Execute()
{
Console.WriteLine("Sample function executed");
return BlankValue.NewBlank();
}
}
// Register your function in a module
[Export(typeof(ITestEngineModule))]
public class TestEngineSampleModule : ITestEngineModule
{
public void RegisterPowerFxFunction(PowerFxConfig config, ITestInfraFunctions testInfraFunctions,
ITestWebProvider testWebProvider, ISingleTestInstanceState singleTestInstanceState,
ITestState testState, IFileSystem fileSystem)
{
config.AddFunction(new SampleFunction());
}
// Implement other required interface methods...
}
Col·laboració amb l'equip de Test Engine
Les organitzacions que desenvolupen extensions valuoses mitjançant el motor de proves de codi obert poden considerar la creació d'una sol·licitud d'extracció per a les seves extensions per fer-les disponibles al producte oficial. El procés normalment implica:
- Desenvolupament : creeu la vostra extensió mitjançant el motor de proves de codi obert
- Validació : proveu la vostra extensió a fons al vostre propi entorn
- Col·laboració : treballeu amb l'equip del motor de proves principal per avaluar l'extensió
- Integració : si s'aprova, Microsoft signa i integra l'extensió al producte
Aquest model de col·laboració permet la innovació mantenint la seguretat i la fiabilitat del producte oficial Test Engine.
Punts d'integració tècnica
Les seccions següents descriuen com l'extensibilitat de Test Engine s'integra amb tecnologies bàsiques com Playwright i el cicle de vida de les característiques. Entendre aquests punts d'integració us ajuda a desenvolupar i implementar extensions personalitzades de manera eficaç.
Integració de dramaturgs
Power Apps Test Engine es basa en Playwright , que proporciona la base per a l'automatització delnavegador. Les extensions personalitzades poden interactuar amb IBrowserContext de Playwright per crear sofisticades capacitats de prova basades en navegador.
Cicle de vida de la funció
Les extensions noves segueixen un cicle de vida dela característica:
- Espai de noms de visualització prèvia: les extensions noves estan disponibles primer a l'espai de noms de visualització prèvia per a les proves primerenques
- Espai de noms TestEngine: després de la validació, les extensions es mouen a l'espai de noms principal de TestEngine
Beneficis del model d'extensibilitat
El model d'extensibilitat proporciona avantatges significatius:
- Estandardització : els components signats per Microsoft garanteixen una qualitat i seguretat constants
- Innovació : el model de codi obert permet la innovació impulsada per la comunitat
- Flexibilitat : les organitzacions poden crear extensions especialitzades per a requisits únics
- Integració : es consideren extensions valuoses per incloure-les al producte oficial