Te va a interesar!

6/recent/ticker-posts

Crónica de un fin anunciado: Coded UI


Seguramente muchos de ustedes no lo sepan, pero mis comienzos con Automation Testing fueron con la herramienta de Microsoft: Coded UI. Por esas cosas de la vida, resultó que la Manager que tenía en ese entonces decidiese que yo intente una prueba de concepto con esta suite. No fue al azar, eso si. La decisión se debió a que los desarrolladores usaban .net para la aplicación que se iba a testear y, además, contábamos con las licencias adecuadas, sin mencionar todo el ecosistema Microsoft con Team Foundation Server, Test Controllers y Test Agents.

Al principio todo fue bastante encarrilado. La herramienta cumplía con lo que prometía, lo cuál era brindar un recordar (ya saben mi opinión sobre ellos...HUYAN COMO A LA PESTE!), un potente editor para lo que se grababa y la posibilidad de correr los tests en máquinas virtuales mediante un Test Controller que oficiaba de puente y el Test Agent que se encargaba de ejecutar los tests.

También brindaba soporte para Data Driven Test con base de datos, xml o csv y tenía una integración super interesante con Microsoft Test Manager, mediante la cuál los tests se podían asignar a un Test Automatizado en Team Foundation Server y tener la opción de correrlos sin una persona.


Los problemas no tardaron en empezar, sobre todo cuando la prueba de concepto fue un éxito y cayó la clásica orden de "Automaticen absolutamente todo". Verán, Coded UI funcionaba de la siguiente manera: Uno hacía una grabación de las acciones como click, mandar texto y validar cosas, las cuáles las salvaba como una función. Eso generaba una clase vacía .cs y una clase con las acciones y los objetos web. Esta última no se podía modificar, ya que se volvía a compilar, pisando todo lo que uno cambiase, por lo que la forma de hacer código personalizado sobre lo grabado era apelar a las herramientas de edición de Visual Studio y mover las funciones que íbamos a toquetear a la clase .cs.

La clase que no se podía modificar quedaba siempre ahí y se iba llenando progresivamente de basura. A grandes rasgos podemos decir que este approach, llamado oficialmente por Microsoft UI Maps, era una analogía al Page Object Model de Selenium.

Se podía integrar con Specflow, tenía unos reportes bastante buenos y logramos automatizar casos muy complejos con cálculos entre distintas páginas y demás. Cumplió su cometido. Finalmente me decanté por Selenium en los próximos proyectos que asesoré por un tema de documentación, flexibilidad y conocimiento general.

Hoy me entero de que esa puerta introductoria a la automatización que fue para mi Coded UI, llega a un fin por parte de Microsoft. Así es, en las Release Notes los muchachos le dicen adiosito a su suite de Automation.
Los motivos escapan a mi, aunque no es difícil de imaginar que se debe a la popularidad de Selenium y cómo les comió el mercado, sumado a que es Open Source. También hay una nueva tendencia a soluciones en la nube, con Machine Learning y con modalidades de suscripción que, me atrevería a pensar, Microsoft debe estar explorando.

Que no les extrañe si en unos meses les cuento sobre una nueva herramienta de Automation Testing en la nube por parte de Microsoft!

Publicar un comentario

0 Comentarios