Compartir a través de


Procedimientos recomendados para las pruebas de IU codificadas

En este tema se describen los procedimientos recomendados para desarrollar pruebas de IU codificadas.

Requisitos

  • Visual Studio Ultimate, Visual Studio Premium

Procedimientos recomendados

Use las instrucciones siguientes para crear una prueba de IU codificada flexible.

  • Siempre que sea posible, use el Generador de pruebas de IU codificadas.

  • No modifique el archivo UIMap.designer.cs directamente.Si lo hace, se sobrescribirán los cambios al archivo.

  • Cree la prueba como una secuencia de métodos grabados.Para obtener más información sobre cómo grabar un método, vea Crear pruebas de IU codificadas.

  • Cada método grabado debe actuar sobre una única página, formulario o cuadro de diálogo.Cree un nuevo método de prueba para cada nueva página, formulario o cuadro de diálogo.

  • Al crear un método, use un nombre de método significativo en lugar del nombre predeterminado.Un nombre significativo ayuda a identificar el propósito del método.

  • Siempre que sea posible, limite cada método grabado a menos de 10 acciones.Este enfoque modular facilita el reemplazo de un método si la interfaz de usuario cambia.

  • Cree cada aserción usando el Generador de pruebas de IU codificadas, que agrega automáticamente un método de aserción al archivo UIMap.Designer.cs.

  • Si la interfaz de usuario cambia, vuelva a grabar los métodos de prueba o los métodos de aserción, o vuelva a grabar las secciones afectadas de un método de prueba existente.

  • Cree un archivo UIMap independiente para cada módulo de la aplicación sometida a prueba.Para obtener más información, vea Probar una aplicación grande con varios mapas de IU.

  • En la aplicación sometida a prueba, use nombres significativos cuando cree los controles de IU.Esto permite que los nombres de controles generados automáticamente sean más significativos y fáciles de usar.

  • Si está creando aserciones codificando con la API, cree un método para cada aserción en la parte de la clase UIMap que está en el archivo UIMap.cs.Llame a este método desde el método de prueba para ejecutar la aserción.

  • Si está codificando directamente con la API, use las propiedades y los métodos de las clases generadas en el archivo UIMap.Designer.cs del código tanto como pueda.Estas clases harán que su trabajo sea más sencillo y más confiable, y le ayudarán a ser más productivo.

Las pruebas de IU codificadas se adaptan automáticamente a muchos cambios de la interfaz de usuario.Por ejemplo, si un elemento de la interfaz de usuario ha cambiado de posición o de color, la prueba de IU codificada seguirá encontrando el elemento correcto en la mayoría de los casos.

Durante una ejecución de pruebas, el marco de pruebas encuentra los controles de IU usando un conjunto de propiedades de búsqueda que se aplican a cada clase de control de las definiciones creadas por el Generador de pruebas de IU codificadas en el archivo UIMap.Designer.cs.Las propiedades de búsqueda contienen pares de nombre y valor de propiedad que se pueden usar para identificar el control, como las propiedades FriendlyName, Name y ControlType del control.Si las propiedades de búsqueda no se modifican, la prueba de IU codificada encontrará correctamente el control en la IU.Si las propiedades de búsqueda cambian, las pruebas de IU codificadas tienen un algoritmo de coincidencia inteligente que aplica heurística para encontrar controles y ventanas en la interfaz de usuario.Cuando la interfaz de usuario haya cambiado, puede modificar las propiedades de búsqueda de elementos identificados previamente para asegurarse de que se encuentran.

Qué hacer si su interfaz de usuario cambia

Las interfaces de usuario cambian frecuentemente durante el desarrollo.He aquí algunas maneras de reducir el efecto de estos cambios:

  • Busque el método grabado al que hace referencia este control y use el Generador de pruebas de IU codificadas para volver a grabar las acciones de este método.Puede emplear el mismo nombre para el método para sobrescribir las acciones existentes.

  • Si un control tiene una aserción que ya no es válida:

    • Elimine el método que contiene la aserción.

    • Quite la llamada a este método del método de prueba.

    • Agregue una nueva aserción arrastrando el botón de cruz al control de IU, abra la asignación de la interfaz de usuario y agregue la nueva aserción.

Para obtener más información sobre cómo grabar pruebas de IU codificadas, vea Comprobar el código usando pruebas de interfaz de usuario codificadas.

Qué hacer si se debe completar un proceso en segundo plano antes de que la prueba pueda continuar

Quizás tenga que esperar hasta que un proceso finalice antes de poder continuar con la siguiente acción de IU.Para ello, puede usar WaitForReadyLevel para esperar antes de que la prueba continúe como en el ejemplo siguiente.

// Set the playback to wait for all threads to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.AllThreads;

// Press the submit button
this.UIMap.ClickSubmit();

// Reset the playback to wait only for the UI thread to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.UIThreadOnly;

Vea también

Referencia

UIMap

Microsoft.VisualStudio.TestTools.UITesting

Conceptos

Comprobar el código usando pruebas de interfaz de usuario codificadas

Probar una aplicación grande con varios mapas de IU

Configuraciones y plataformas compatibles con las pruebas de IU codificadas y las grabaciones de acciones

Otros recursos

Crear pruebas de IU codificadas