Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Nota
As funcionalidades de vista previa non se deseñaron para uso de produción e poden ter funcionalidade restrinxida. Estas funcionalidades están dispoñibles antes da versión oficial para que os clientes poidan obter acceso a elas rápido e fornecer comentarios.
Visión xeral
Power Apps O motor de probas conta cun marco de extensibilidade robusto que permite ampliar as capacidades básicas de probas a través de varios puntos de extensión. Este artigo explica:
- Como Microsoft asina e valida as extensións propias
- Como funciona o modelo de extensibilidade usando o Marco de Extensibilidade Xestionado (MEF)
- Opcións para que as organizacións creen as súas propias extensións
Compoñentes asinados por Microsoft
Importante
Durante a fase de vista previa pública, o comando pac test run só carga as extensións asinadas por Microsoft. Este deseño garante a seguridade, a estabilidade e o rendemento da plataforma Test Engine.
Microsoft crea, asina e valida compoñentes de primeira parte para garantir que cumpren os estándares de calidade e seguranza. Estes compoñentes inclúen:
- Provedores principais de autenticación
- Provedores de aplicacións de lenzo e aplicacións baseadas en modelos
- Funcións e accións estándar Power Fx
Marco de extensibilidade (MEF)
O motor de probas usa o Marco de extensibilidade xestionado (MEF) para habilitar unha arquitectura conectable. Esta estrutura permite tres tipos principais de extensións:
Extensións de autenticación
As extensións de autenticación permiten diferentes xeitos de autenticarse con Power Platform:
- Autenticación do estado de almacenamento : o método de autenticación predeterminado baseado no navegador
- Autenticación baseada en certificados - Para a execución de probas non interactivas
- Provedores de autenticación personalizados : para escenarios de autenticación especializados
Para obter máis información, consulte Autenticación no motor de probas.
Extensións de provedores
As extensións do provedor permiten probar diferentes tipos de aplicacións:
- Provedor de aplicacións Canvas - Para probar Power Apps aplicacións Canvas
- Provedor de aplicacións baseadas en modelos - Para probar Dataverse aplicacións baseadas en modelos
- Power Fx Provedor - Para executar Power Fx instrucións de forma independente
- Provedor de portal - Para automatizar operacións en Power Apps
Para obter máis información, consulte Aplicacións de Canvas, Aplicacións baseadas en modelos e Dataverse Extensións.
Power Fx extensións
Power Fx as extensións engaden novas capacidades de proba a través de funcións personalizadas:
- Funcións definidas polo usuario - Funcións de código baixo definidas no plan de probas
- Implementacións de ReflectionFunction en C# : funcións personalizadas implementadas en módulos de C#
Para obter máis información, consulte Power Fx Funcións e Implementacións de ReflectionFunction en C#.
Opcións de desenvolvemento de extensións
As organizacións teñen varias opcións para estender o motor de probas:
Usando a versión de código aberto
O *Motor de probas* está dispoñible como proxecto de código aberto baixo a licenza MIT. Power Apps Microsoft propio, equipos de terceiros e organizacións poden:
- Crear novos provedores para escenarios de probas especializadas
- Desenvolver mecanismos de autenticación personalizados
- Crear novas implementacións de ReflectionFunction en C#
- Crear módulos que amplíen a funcionalidade principal
- Enviar contribucións para a súa consideración no produto principal
Power Fx funcións definidas polo usuario
Para escenarios máis sinxelos, podes crear funcións definidas polo usuario directamente nos teus plans de proba:
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())
Funcións C# personalizadas con ReflectionFunction Power Fx
Para escenarios máis complexos, as organizacións poden desenvolver funcións C# personalizadas implementando a clase ReflectionFunction e rexistrándoas a través dun módulo:
// 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...
}
Colaboración co equipo do motor de probas
As organizacións que desenvolven extensións valiosas usando o motor de probas de código aberto poden considerar a creación dunha solicitude de incorporación de cambios para as súas extensións para que estean dispoñibles no produto oficial. O proceso normalmente implica:
- Desenvolvemento - Crea a túa extensión usando o motor de probas de código aberto
- Validación - Proba a túa extensión exhaustivamente no teu propio entorno
- Colaboración - Traballar co equipo principal do motor de probas para avaliar a extensión
- Integración - Se se aproba, Microsoft asina e integra a extensión no produto
Este modelo de colaboración permite a innovación mantendo a seguridade e a fiabilidade do produto oficial Test Engine.
Puntos de integración técnica
As seguintes seccións describen como se integra a extensibilidade de Test Engine con tecnoloxías básicas como Playwright e o ciclo de vida das funcionalidades. Comprender estes puntos de integración axudarache a desenvolver e implementar extensións personalizadas de forma eficaz.
Integración de dramaturgos
Power Apps O motor de probas está construído sobre *Playwright*, que proporciona a base para a automatización do navegador. ... As extensións personalizadas poden interactuar co *IBrowserContext* de Playwright para crear funcións de probas sofisticadas baseadas no navegador. ...
Ciclo de vida das características
As novas extensións seguen un ciclo de vida das funcionalidades:
- Espazo de nomes de vista previa : as novas extensións están dispoñibles primeiro no espazo de nomes de vista previa para as primeiras probas
- Espazo de nomes TestEngine : despois da validación, as extensións móvense ao espazo de nomes principal de TestEngine
Vantaxes do modelo de extensibilidade
O modelo de extensibilidade ofrece vantaxes significativas:
- Estandarización - Os compoñentes asinados por Microsoft garanten unha calidade e unha seguridade consistentes
- Innovación - O modelo de código aberto permite a innovación impulsada pola comunidade
- Flexibilidade - As organizacións poden crear extensións especializadas para requisitos únicos
- Integración - Considéranse extensións valiosas para a súa inclusión no produto oficial