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.
La creación de planes de pruebas completos para aplicaciones puede llevar mucho tiempo, especialmente para escenarios complejos. Power Platform Las herramientas de creación asistida por IA como GitHub Copilot pueden acelerar significativamente este proceso al generar plantillas de prueba, sugerir casos de prueba y automatizar la creación de código repetitivo.
Esta guía explica cómo utilizar soluciones de control de código fuente para crear de manera eficiente planes de pruebas de Test Engine. GitHub Copilot Power Platform
Requisitos previos
Antes de comenzar, asegúrese de tener:
- Visual Studio Código instalado
- GitHub Copilot suscripción
- GitHub Copilot Extensión de chat para VS Code
- Power Platform CLI instalado
- Una solución controlada por la fuente Power Platform
Configuración de su entorno de creación de pruebas
Para maximizar la eficacia de la creación de pruebas asistida por IA, combine estas herramientas en un flujo de trabajo estructurado:
- Obtenga sus archivos fuente
- Inicializar un repositorio git para el control de versiones (si aún no lo ha hecho)
- Cree una carpeta de prueba dedicada en su repositorio de soluciones
- Abra la carpeta de la solución en Visual Studio Código
Uso para la creación de pruebas GitHub Copilot
GitHub Copilot Puede ayudarle a generar varios componentes de prueba en función de su solución controlada por código fuente. A continuación se explica cómo utilizar sus capacidades de forma efectiva:
Utilizando documentación de muestra como contexto
El catálogo de muestras de motores de prueba proporciona una rica fuente de material de referencia para GitHub Copilot Puedes ayudar a Copilot a generar pruebas de mayor calidad mediante lo siguiente:
- Incluir el archivo samples.md en su espacio de trabajo
- Hacer referencia a ejemplos específicos en sus indicaciones
- Proporcionar enlaces a repositorios de muestra de GitHub
Por ejemplo, podría:
- Abra el código de su aplicación y el archivo samples.md en VS Code
- Pídale a Copilot que cree pruebas "similares al ejemplo de ButtonClicker" o "que utilicen patrones del ejemplo" Dataverse
- Haga referencia a capacidades específicas de muestras que coincidan con sus necesidades de prueba
Este enfoque ayuda a Copilot a comprender los patrones del motor de prueba y a generar pruebas más precisas. Power Platform
Trabajar con GitHub Copilot en modo agente
Visual Studio El chat de Code ofrece un modo de agente que puede ayudar a generar pruebas basadas en los archivos de su solución. GitHub Copilot Este modo permite a Copilot acceder y comprender el contexto de su proyecto más profundamente.
Para utilizar el modo de agente para la generación de pruebas:
- En VS Code, abra el Chat (Ctrl+Shift+I) GitHub Copilot
- Seleccione Agente en el selector de modo Copiloto
- Redacte un mensaje detallado sobre la prueba que desea crear.
Ejemplos de indicaciones para la generación de pruebas
Intente utilizar indicaciones como estas para generar pruebas:
Meta:
Genere un conjunto de pruebas completo para una aplicación de lienzo utilizando el motor de pruebas, inspirado en el ejemplo ButtonClicker Power Apps . ...
Inmediato:
Genere una prueba para ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml usando el ejemplo en https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker como referencia. Crear casos esperados, casos extremos y casos de excepción. La prueba debe crear un archivo YAML de prueba y pasos de prueba, config.json y RunTest.ps1 basados en la muestra para permitirme ejecutar la prueba. Power Fx
Meta:
Cree un plan de pruebas detallado para una aplicación basada en modelos para garantizar que la funcionalidad principal y la lógica empresarial funcionen como se espera.
Inmediato:
Cree un plan de prueba integral para mi aplicación basada en modelos ubicada en ./SolutionPackage/src/Other/Solution.xml. La prueba debe validar la carga del formulario, la creación de registros y la ejecución de reglas comerciales. Genere el YAML de prueba, los pasos y un script de PowerShell para ejecutar la prueba. Power Fx
Meta:
Construir un plan de pruebas para que las entidades verifiquen las operaciones CRUD a través de acciones. Dataverse Power Fx
Inmediato:
Crear un plan de pruebas integral para mis entidades. Dataverse La prueba debe realizar acciones de creación, actualización y eliminación. Power Fx Genere el YAML de prueba, los pasos y un script de PowerShell para ejecutar la prueba. Power Fx
Comprensión de los componentes de prueba generados
Cuando se genera una prueba, normalmente crea los siguientes componentes: GitHub Copilot
- Plan de pruebas YAML: define la estructura de la prueba, la URL de la aplicación y los pasos de la prueba
- Power Fx Pasos de prueba: Contiene la lógica de prueba usando expresiones Power Fx
- config.json: Configuración de los parámetros de ejecución de pruebas
- RunTest.ps1: script de PowerShell para ejecutar la prueba
Ejemplo: Estructura de prueba generada
MyAppTests/
├── MyAppTest.fx.yaml # Power Fx test steps
├── MyAppTest.yml # Test plan definition
├── config.json # Test configuration
└── RunTest.ps1 # Test execution script
Mejores prácticas para la creación de pruebas asistidas por IA
Tenga en cuenta las siguientes secciones para aprovechar al máximo la creación de pruebas de Test Engine. GitHub Copilot
Proporcione un contexto claro en sus indicaciones
Sea específico sobre lo que desea probar e incluya referencias a:
- Los archivos exactos para probar
- Pruebas de muestra para usar como plantillas
- Escenarios de prueba específicos que desea cubrir
- Cualquier requisito de autenticación o entorno
Uso de ejemplos de Test Engine para el contexto
La documentación samples.md cataloga todos los ejemplos disponibles del repositorio del motor de pruebas, lo que puede ser una excelente referencia al crear indicaciones para . GitHub Copilot Por ejemplo, al probar una aplicación de lienzo con botones, puede hacer referencia al ejemplo de clic de botón: ...
Inmediato:
Genere una prueba para mi aplicación Canvas en ./SolutionPackage/src/CanvasApps/src/MyApp/Src/App.fx.yaml usando el ejemplo ButtonClicker de https://github.com/microsoft/PowerApps-TestEngine/tree/main/samples/buttonclicker. La prueba debe:
1. Verificar que mi botón de contador incremente un valor en la pantalla
2. Pruebe las condiciones de contorno (por ejemplo, valor máximo)
3. Incluya los ganchos de ciclo de vida OnTestCaseStart y OnTestCaseComplete
4. Genere el config.json con las variables de entorno adecuadas
Este enfoque ayuda a Copilot a comprender la estructura de la prueba y genera pruebas más precisas y contextualmente relevantes basadas en ejemplos probados.
Utilice soluciones controladas por el origen como contexto
Copilot funciona mejor cuando puede analizar la estructura de su solución. Utilice el control de código fuente para soluciones para proporcionar este contexto. Power Platform Este contexto permite a Copilot:
- Comprenda la estructura de su aplicación
- Identificar nombres y propiedades de controles
- Generar pasos de prueba más precisos
- Haga referencia a las rutas de archivo correctas
Revisar y refinar las pruebas generadas
Si bien las pruebas generadas por IA proporcionan un excelente punto de partida, siempre:
- Verifique que las referencias de control coincidan con su aplicación
- Agregar afirmaciones para funcionalidades críticas para el negocio
- Asegúrese de que los casos extremos se gestionen adecuadamente
- Validar la configuración de autenticación
Combine con la experiencia manual
Para escenarios de prueba complejos, utilice GitHub Copilot para:
- Generar el marco y la estructura de pruebas
- Crear patrones de validación estándar
- Sugerir casos extremos a considerar
Luego, aumente su experiencia en el dominio para:
- Reglas de validación específicas de la empresa
- Consideraciones ambientales
- Datos de pruebas especializados
Patrones comunes de generación de pruebas
Esta sección contiene algunos patrones comunes de generación de pruebas:
Prueba de aplicaciones de Canvas
Para las aplicaciones de lienzo, utilice indicaciones que hagan referencia al archivo en su solución controlada por código fuente: App.fx.yaml
Inmediato:
Genere una prueba para mi aplicación Canvas en ./SolutionPackage/src/CanvasApps/src/MyExpenseApp/Src/App.fx.yaml que valide el proceso de envío de gastos. La prueba debe completar los campos de gastos, enviar el formulario y verificar que aparezca el mensaje de confirmación.
Prueba de aplicaciones basadas en modelos
Para las aplicaciones basadas en modelos, céntrese en la navegación de entidades, las interacciones de formularios y las reglas comerciales:
Inmediato:
Cree una prueba para mi aplicación basada en modelos que pruebe el formulario de entidad Cuenta. La prueba debe crear un nuevo registro de cuenta, validar los campos obligatorios y verificar que las reglas comerciales para el cálculo del límite de crédito funcionen correctamente.
Extensiones de prueba Dataverse
Para las pruebas, enfatice las operaciones de datos y la validación de la lógica de negocios: Dataverse
Inmediato:
Generar una prueba que valide los complementos personalizados en mi solución. Dataverse La prueba debe crear registros de prueba, activar la ejecución del complemento y verificar que se produjeron las transformaciones de datos esperadas.
Indicaciones de prueba específicas de la muestra
Para obtener la generación de pruebas más precisa, consulte muestras específicas del catálogo de muestras del motor de pruebas que coincidan con sus necesidades de pruebas. A continuación se presentan indicaciones adaptadas a escenarios de prueba comunes:
Ejemplos de indicaciones de ButtonClicker
El ejemplo de ButtonClicker demuestra la prueba de la funcionalidad básica del contador. ... Utilice estas indicaciones:
Inmediato:
Genere una prueba para mi aplicación de contador con una estructura similar al ejemplo de ButtonClicker. Mi aplicación tiene botones llamados "IncrementBtn" y "ResetBtn" con un "CounterLabel" que muestra el recuento actual. Cree una prueba que verifique que ambos botones funcionan correctamente y que el recuento máximo es 10.
Inmediato:
Cree una prueba para mi aplicación de interacción de botones usando el ejemplo ButtonClicker como referencia. Mi aplicación tiene un "Botón de envío" que debe habilitarse solo cuando se completan los campos "NameInput" y "EmailInput". Genere un plan de pruebas con pasos para validar este comportamiento. Power Fx
Indicaciones para probar la galería
Los ejemplos de BasicGallery y NestedGallery muestran cómo probar las interacciones de la galería:
Inmediato:
Genere una prueba para mi aplicación de galería donde tengo una galería "Productos" con elementos de productos que contienen controles "TitleLabel", "PriceLabel" y "SelectButton". Utilice la estructura de muestra BasicGallery para verificar que puedo seleccionar elementos y que los detalles correctos aparecen en un "DetailPanel".
Indicaciones para operaciones de datos
El ejemplo demuestra la prueba de operaciones de datos: Dataverse
Inmediato:
Cree una prueba para mi aplicación CRM usando el patrón de muestra. Dataverse Probar que puedo crear un nuevo registro de contacto, actualizarlo y luego verificar que los cambios persistan. Incluye tanto pruebas de IU como operaciones directas. Dataverse
Indicaciones para pruebas de IA
Para probar la funcionalidad impulsada por IA, consulte el ejemplo de aviso de IA: ...
Inmediato:
Genere una prueba para mi aplicación de análisis de sentimientos basada en el ejemplo de AI Prompt. Mi aplicación tiene un cuadro de texto "FeedbackInput" y utiliza AI Builder para clasificarlo como positivo, negativo o neutral. Cree una prueba que valide que diferentes entradas produzcan los resultados esperados dentro de umbrales aceptables.
Técnicas avanzadas
En esta sección se ofrecen ejemplos de capacidades de solicitud avanzadas.
Creación de conjuntos de pruebas multientorno
Puede solicitarle a Copilot que genere pruebas que funcionen en múltiples entornos:
Inmediato:
Generar un conjunto de pruebas para mi aplicación que pueda ejecutarse en entornos DEV, TEST y PROD con variables de configuración adecuadas para cada entorno.
Generación de escenarios de simulación de datos
Para pruebas aisladas con simulación de conector: ...
Inmediato:
Cree una prueba con respuestas de conector simuladas para mi aplicación que usa el conector de Outlook. Office 365 La prueba debe simular la recepción de correos electrónicos y validar la lógica de procesamiento de la aplicación.
Prueba de las capacidades de la IA y manejo de resultados no deterministas
Cuando se trabaja con aplicaciones impulsadas por IA, las pruebas presentan desafíos únicos ya que los resultados de IA pueden variar levemente entre ejecuciones, incluso con entradas idénticas. Este comportamiento no determinista requiere enfoques de prueba especiales.
Comprensión de las pruebas no deterministas
Las pruebas no deterministas implican validar resultados que podrían variar legítimamente entre ejecuciones de pruebas:
- Resultados del modelo de IA: Respuestas de modelos de IA como GPT o componentes personalizados AI Builder
- Puntuaciones de confianza: Evaluaciones numéricas que pueden fluctuar dentro de rangos aceptables
- Contenido generado: Texto o recomendaciones producidas por sistemas de IA
Uso de Preview.AIExecutePrompt para pruebas deterministas de las capacidades de IA
El motor de prueba proporciona el Preview.AIExecutePrompt que permite la validación determinista de las respuestas de IA. Este enfoque le permite:
- Ejecutar indicaciones de IA dentro de escenarios de prueba
- Analizar y validar las respuestas estructuradas
- Verificar que los resultados críticos cumplan con las expectativas a pesar de las posibles variaciones
Ejemplo: Evaluación de calificación con AI Builder
El siguiente ejemplo demuestra el uso de la función para probar un sistema de calificación impulsado por IA: Preview.AIExecutePrompt
EvaluateTestQuestionPrompt(Prompt: TestQuestion): TestResult =
With({
Response: ParseJSON(
Preview.AIExecutePrompt("PromptEvaluator",
{
Context: "You are a helpful agent asking about external customer service questions.",
Question: Prompt.Question
}).Text)
},If(
IsError(AssertNotError(Prompt.ExpectedRating=Response.Rating, Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating)),
{PassFail: 1, Summary: Prompt.Question & ", Expected " & Prompt.ExpectedRating & ", Actual " & Response.Rating}, {PassFail: 0, Summary: "Pass " & Prompt.Question}
))
En este ejemplo:
- La prueba ejecuta una solicitud de IA contra el modelo "PromptEvaluator"
- Pasa un contexto y una pregunta para evaluación
- Valida que la calificación devuelta coincida con el valor esperado
- Proporciona información clara sobre el éxito o el fracaso de la prueba.
Puede explorar la implementación completa en el ejemplo de AI Prompt del repositorio -TestEngine. ...PowerApps
Incorporación de pruebas con inteligencia artificial
Al utilizar para generar pruebas para aplicaciones impulsadas por IA: GitHub Copilot
Inmediato:
Genere una prueba para mi aplicación impulsada por IA que utiliza AI Builder procesamiento de formularios. Incluya pasos de prueba que validen los resultados de IA con la tolerancia adecuada para resultados no deterministas.
Solución de problemas y refinamiento
Si genera pruebas que no satisfacen sus necesidades: GitHub Copilot
- Refina tu mensaje: Sé más específico sobre lo que quieres probar.
- Proporcione ejemplos: enlace a muestras de prueba específicas que coincidan con su estilo deseado
- Desglose de pruebas complejas: Solicite la generación de componentes de prueba más pequeños y específicos.
- Iterar: usa las respuestas de Copilot para refinar tu siguiente mensaje
Artículos relacionados
Explorar las funciones del motor de pruebas
Explorar el catálogo de muestras de Test Engine
Aprenda sobre las funciones de prueba Power Fx
Comprender el formato de prueba YAML
Explorar las opciones de autenticación
Capacitación: Creación de aplicaciones con el modo agente GitHub Copilot