7/1/2009 16:28 El Bruno

[VSTS2010] Coded UI Tests, grabador de secuencia de pasos

Buenas,

siguiendo el hilo del post que escribí ayer sobre la automatización de pruebas de UI, queda pendiente comentar que además de la capacidad para interceptar y crear manualmente los tests queremos ejecutar como pruebas unitarias, tenemos la posibilidad de utilizar una aplicación que nos “graba una sesión” de ejecución y luego permite invocar a la misma.

Podemos invocar a esta aplicación de grabación de secuencias, desde la selección inicial de tipo de test, o desde el código directamente. En el siguiente tutorial utilizaré la 2da opción y la Calculadora de Windows para invocar a la acción del producto de 2 números.

Tutorial

1. Dentro de un test en una clase de tipo CodedUI, desplegamos el menú contextual y seleccionamos la opción Edit CodedUITest // Record and Generate Code.

2. La acción anterior nos abrirá una nueva aplicación llamada Test Recorder, que podremos ver que por defecto no obtiene foco, pero se encarga de llevar el registro de las acciones que realicemos. En la siguiente imagen la podemos ver junto con la calculadora y además podemos ver como la calculadora está siendo “interceptada” por esta aplicación (el pequeño ícono en la barra de título de la calculadora)

3. He seguido los siguientes pasos para simular un producto

- Click en la calculadora para dar foco a la misma

- Click en la casilla de texto de la calculadora

- Introducir el valor “11”

- Presionar la tecla “*”

- Introducir el valor “3”

- Presionar la tecla “=”

El grabador de pasos ha grabado la siguiente secuencia

4. Una vez generada la secuencia de pasos, podemos generar el código para ejecutar la misma presionando el botón [Generate Code]. En este momento debemos definir el nombre de la función donde se crearán los pasos que hemos ejecutado.

5. Finalmente podemos agregar un punto de validación presionando el boton [Add Validation]. Esta acción nos abrirá la aplicación de intercepción de controles que publiqué en este post y podremos interceptar el valor de uno o más controles.

6. Volviendo a Visual Studio podemos ver que en el proyecto de Test se ha agregado una nueva clase llamada “RecordedMethods” donde se ha creado una nueva función estática que se encarga de ejecutar los pasos del test que hemos grabado.

El código de esta clase, no es muy complejo pero si bastante extenso. Si alguien quiere echarle un vistazo puede descargarse el archivo .cs desde aquí.

7. Finalmente para ejecutar nuestra prueba, dentro del Unit Test uinvocamos a la función RecordedMethods.CalcProductTest() para ejecutar los pasos que hemos grabado, y luego obtenemos el valor de la caja de texto para validar el mismo.

8. Como no todo son ejemplos simples, en este caso si ejecutamos la prueba unitaria la misma nos devuelve un error. Ya que en la calculadora de Windows todos los valores siempre llevan el separador de decimales después del valor introducido (y mi validación en este caso es 11 x 22 = 242)

 

Saludos @ La Finca

El Bruno

Crossposting from ElBruno.com
Archivado en: ,
Comparte este post:

# [VSTS2010] Listado de Novedades (VIII)

Monday, June 15, 2009 3:36 PM by El Bruno

Buenas, ya vamos por el 8vo recopilatorio con los posts que voy escribiendo sobre las novedades de Visual

# [VSTS2010] Listado de Novedades (X)

Monday, September 21, 2009 6:39 PM by El Bruno

Buenas, y llegó el 10mo recopilatorio con los posts que voy escribiendo sobre las novedades de

# [VSTS2010] Listado de Novedades (XI)

Tuesday, December 22, 2009 11:03 AM by El Bruno

Buenas, 11vo recopilatorio con los posts que voy escribiendo sobre las novedades de Visual Studio 2010

# [VSTS2010] Listado de Novedades (XII)

Tuesday, January 19, 2010 1:46 PM by El Bruno

Buenas, nuevo recopilatorio con los posts que voy escribiendo sobre las novedades de Visual Studio 2010