Cosas Interesantes para Ver

martes, 3 de noviembre de 2015

Code UI Automation con .NET - PkosTestEngine

En el proceso de desarrollo es muy normal tener que realizar tareas repetitivas tales como modificar sectores de la aplicación y tener que repetir varios pasos para llegar al punto de cambio.
Por otro lado los Ingenieros de Control de Calidad realizan tareas de pruebas muchas veces mecánicas pudiendo delegar las mismas a otros agentes, dicho de otra manera crear test automáticos.

Opciones

Existen muchas opciones para crear test automáticos:

  • Selenium
  • Test Complete
  • Page Factory de .NET

Code UI .NET

Esta última tecnología es la que conozco, pero me resultó mucho trabajo realizar un simple test. Es decir CodeUI requiere crear una clase por cada página con la que el Automation interactuará y además una clase por cada componente en la página. 

Mucho trabajo
La creación de test requiere mucho tiempo frente al desarrollo para los programadores.

PkosTestEngine

Es tu framework que desarrollé para agilizar el Automation, trabaja de forma excelente sobre Internet Explorer para aplicaciones ASP.NET especialmente y otras tecnologías como php, html regular, etc.

está basado de CodeUI de .NET y por esa razón brinda la riqueza del lenguaje C#

Como funciona?

Simple, primero se require clonar el proyecto 
git clone https://github.com/p-kos/PkosTestEngine.git
O puedes bajarte la dll compilada de:

https://dl.dropboxusercontent.com/u/32795617/PkosTestEngine.zip

Luego abre el proyecto y crea un nuevo CodeUI test heredando de la clase WebApp

Para comenzar tu Test necesitas "attachar" tu test a la página que necesites automatizar

LaunchApp("https://github.com");

Luego cada paso de test que necesites realizar se simplifica en una línea de código donde se hace referencia a un control en la página donde te encuentres:

FindControl( "#username" ).Text = "marco";

FindControls( ".boxLang" ).Where( b=> b.InnerText == "ok" ).FirstOrDefault( ).Click( );

Donde es FindControl es un generic que acepta HtmlControl y en los parámetros del método se require un selector para ubicar el componente

Selectores

Los selectores que se utilizan son:

  • #MyControl : control cuyo id es MyControl
  • .controlType: control cuya clase CSS es controlType
  • a[href='http://google.com'] : control de hipervículo (a) cuya referencia es http://google.com
Final

Una vez que se tiene el test escrito, solo se requiere ejecutarlo.

Este framework está escrito sobre Visual Studio 2010 Premiun, se requiere esta versión o Ultimate. Esto debido a que las versiones mencionadas tienen las librerías necesarias para CodeUI.






No hay comentarios:

Publicar un comentario

Tuitealo ;)

FB Comentarios