Comparativa de herramientas de automatización de tareas del DOM

herramientas de automatización del DOM

Hacemos una comparativa de 3 de las herramientas más importantes dentro de la automatización de tareas del DOM. Agradecer a Víctor García y a Javier Duque por colaborar en la investigación.

SELENIUM

selenium ide

Selenium es la primera herramienta de automatización de tareas y casos de usuario a analizar. En ésta se pueden usar un gran abanico de tecnologías para la creación y puesta en marcha de los tests funcionales.

  • Se ha podido comprobar que con selenium los tiempos de espera para la carga del DOM son muy bajos y, por tanto, se ha de usar un timer (tiempo de espera) para que la herramienta encuentre el/los elemento/os a automatizar.
  • Otro inconveniente que he encontrado es que para poder usar correctamente la herramienta Selenium IDE junto con Eclipse, se ha de usar una versión específica de Mozilla Firefox(v38).
  • Los lenguajes soportados son los siguientes:
    • Java
    • C#
    • Python
    • JavaScript
    • Ruby
    • PHP
    • Perl

HP-UFT

hp uft

HP-UFT es una herramienta de automatización de tareas y tests funcionales en la cual se pueden usar un amplio rango de tecnologías para crear los Test Case, ya sea realizando la grabación con la propia herramienta o escribiendo el código a mano, es recomendado realizar la mayor parte de TC grabando para facilitar su uso.

  • Se deben tener conocimientos del Lenguaje de programación elegido para realizar comprobaciones o bucles dentro de una acción.
  • Mediante el lenguaje se pueden atrapar posibles errores que puedan darse al ejecutar el TC.
  • Durante el tiempo de ejecución hay que realizar sincronización para dar tiempo a que todos los objetos de la aplicación a testear estén cargados en la misma.
  • Permite la integración de librerías , donde podemos crearnos nuestras propias funciones las cuales podemos utilizar desde cualquier proyecto.
  • Se pueden importar Acciones  desde otro Escenarios(Contenedor de Acciones) para que puedan ser usadas varias veces en el mismo o en otro proyecto.
  • La inserción de datos en una prueba se realiza mediante DataTable, que son hojas de excel las cuales se pueden organizar de diferentes formas para insertar los datos a los TC.
  • Se tiene un Datatable global y se puede tener un Datatable local para cada acción donde contenga los datos necesarios para dicha acción y así tener separados los datos de la prueba para un mejor mantenimiento de la misma.
  • HP-UFT  aporta pruebas de dispositivos reales en las principales plataformas móviles (iOS, Android y Windows), a través de los principales exploradores (Chrome, Firefox, Internet Explorer y Safari).
  • Al finalizar una prueba el HP devuelve un resumen de la prueba y si ha tenido o no errores al ejecutar.
  • Se pueden programar para que si atrapamos un error nos guarde una imagen de la web en el momento de error, de esta forma tenemos más información de cuál pudo ser el fallo

SILK-TEST

borland silk test

Silk Test es una herramienta de automatización de tareas y pruebas funcionales y de regresión para aplicaciones empresariales, nativas y web.Es una herramienta que requiere una licencia para ser utilizada.

Silk Test permite elegir 3 caminos para crear los test automatizados:

  1. Mediante grabación, elegimos la aplicación que deseamos testear, si es una web el navegador y la URL, y como un usuario normal probamos la aplicación mientras que por cada acción (onclick, onkeyup,…) la herramienta va guardando en su repositorio de objetos cada uno de los elementos que reciben la acción y genera el código para el test automatizado. Superior al método de grabación otorgado por HP-UFT puesto que HP-UFT solo parece identificar elementos de un formulario mientras que SilkTest sabe apañárselas para encontrar cualquier elemento de un html aparte de guardar una captura de pantalla por cada paso sirviendo de recordatorio en el futuro.
  2. Mediante visual test. SilkTest posee una interfaz capaz de generar el código mediante ayudantes que nos permitirán identificar los elementos en la aplicación y especificarle qué acción debe ejecutarse sobre él así como generar los flujos de codigo (condiciones y bucles). Esta opción no existe en HP-UFT.
  3. Scripting. Ignorando todos lo demás y de una manera más compleja los test automatizados tambien pueden ser elaborados desde un script en vb.net directamente, aunque normalmente suelen ser usados para automatizar otras tareas como la creación de reportes personalizados, envio de correos electronicos y toma de capturas.En este aspecto, otras herramientas como Selenium o HP-UFT son mucho más convenientes para generar test automatizados desde scripting.

Slk Test, al igual que HP-UFT contiene un lector de Excel capaz de iterar por todas las filas de este durante la realización de una batería de pruebas automatizadas. HP-UFT es superior en este aspecto porque permite obviar los bucles y el por si mismo ejecutará la repetición de la batería de pruebas según el número de filas del Excel

Los reportes son guardados en una base de datos autogenerado por el propio silktest, a diferencia de HP-UFT que genera ficheros por cada resultado de los test dificultando la posibilidad de filtrar resultados o de acceder a ellos desde otro ordenador.

Al igual que otras herramientas, los test automatizados pueden ser programados no solo en un solo lenguaje(vb.NET) sino en otros como C#,Java o vb.Script.