Pruebas asistidas por IA para aplicaciones de Windows

Los comandos winapp ui y la habilidad winui-ui-testing permiten que tu agente de IA inspeccione, interactúe con la interfaz de usuario de tu aplicación y la valide automáticamente, describiendo lo que ve en lenguaje natural para que puedas iterar sin escribir primero código de infraestructura de pruebas.

Comandos de inspección de la interfaz de usuario

La habilidad winui-ui-testing está incluida en el complemento winui@awesome-copilot. Si instaló el complemento durante la instalación, no se requiere ninguna instalación adicional.

Command Qué hace
winapp ui inspect Volca el árbol de accesibilidad de la aplicación en ejecución
winapp ui screenshot Captura una captura de pantalla de la ventana de la aplicación
winapp ui click <selector> Hace clic en un botón o selecciona un elemento
winapp ui invoke <selector> Invoca la acción predeterminada en un control
winapp ui search <text> Busca en el árbol de elementos por nombre o AutomationId
winapp ui set-value <selector> <value> Establece el valor de un TextBox o ComboBox

Pida al agente que pruebe la aplicación.

  1. Ejecute la aplicación:
    dotnet run
    
  2. Pregunte a su agente una pregunta en lenguaje natural, como:

    "Examine la aplicación en ejecución y dígame si el botón Guardar es accesible cuando el formulario está vacío".

  3. El agente usa winapp ui inspect y winapp ui screenshot para examinar la aplicación y responder.

Este flujo de trabajo le permite detectar problemas (falta el foco del teclado, los controles deshabilitados, los problemas de diseño) antes de escribir una sola línea de código de prueba.

Escribir pruebas automatizadas

Una vez que haya explorado la aplicación de forma interactiva, pida al agente que genere pruebas formales. Usa este prompt inicial:

Write an xUnit UI test for my WinUI 3 app that:
1. Launches the app with dotnet run
2. Verifies the main window title is "My App"
3. Clicks the button with AutomationId "SaveButton"
4. Verifies a success message appears
Use the winapp ui commands for element interaction.

Las pruebas generadas usan winapp ui comandos como capa de interacción, por lo que se ejecutan sin un marco de automatización de la interfaz de usuario independiente.

Establecer AutomationIds en XAML

Para que winapp ui click pueda dirigirse a los elementos de forma fiable, establezca AutomationProperties.AutomationId en su XAML:

<Button AutomationProperties.AutomationId="SaveButton"
        Content="Save" />
<TextBox AutomationProperties.AutomationId="TitleInput" />

Pregunta al agente: "Agrega atributos AutomationId a todos los controles interactivos de este XAML."