The Best Automation tool…

Alo alo

Bueno en este momento yo estoy en camino a la bella ciudad de Oaxaca, después de aventarme dos super películas en el camión recordé que a mi lap top le queda toda la pila y el blog para variar está un poco descuidado, una diculpa por eso, pero aún no agarró el ritmo.

En estos dias de harto trabajo y muy entretenido, he tenido que ver una gran variedad de herramientas y suites de testing. Y lo que se me ha hecho curioso es que cada uno de los diferentes proovedores dicen tener el mejor producto.

La verdad es que de aquellos productos que he revisado (de los cuales espero poco a poco ir sacando reviews) no he encontrado ninguno que en mi opinión sea la mejor solución para el área de pruebas.

Esto es una realidad, lo que opino de todas las herramientas es que merecen su oportunidad y cada una de ella puede aportar mucho a un proceso de pruebas pero en mi humilde opinión siempre la elección de la herramienta dependerá del cliente, sistema, infraestructura, capacidades técnicas y otras circusntacias que nos limitan.

Por esto quiero compartir con ustedes una receta que espero les ayude su elección de la mejor herramienta para sus necesidades (aunque lo mejor seria mandarnos un correo y buscar nuestro apoyo profesional jejeje ;) , pero son libres de hacerlo por su cuenta).

1.- Opinión Imparcial: En primer lugar debemos de llevar a cabo la elección con un punto de vista objetivo, sin tomar en cuenta preferencias personales si no teniendo en mente que no seremos los únicos usuarios de la herramienta o suite, de tal forma que tenemos que ponernos en los zapatos de los usuarios y elegir lo que seria mejor para ellos.

2.- Costo de la herramienta: Esto puede ser algo obvio pero vale la pena mencionarlo, debemos de considerar el costo de la herramienta tanto la inversión inicial como su mantennimiento, quizá la herramienta requiera de un costo anual, o de muchos complementos lo cual puede llevar a una mayor inversión después, también hay que considerar que recursos con un buen conocimiento de la herramienta pueden llegar a ser muy caros. Desde luego que también tenemos que ver la relación costo/beneficio, de esta forma una fuerte inversión puede ser de lo mejor.

3.- Recursos Técnicos: Se tiene que evaluar también el nivel técnico requerido para la operación de la herramienta, y esto conlleva a evaluar el nivel técnico que se tiene en el personal también, de esta forma se debe de seleccionar una herramienta que pueda ser explotada correctamente, es decir no puedes poner una herramienta de automatización tipo WatiN a un grupo de usuarios que en su vida han programado, o poner una aplicación record and play sin opción de “scripting” a programadores de hueso colorado. En el primer ejemplo la herramienta tiene gran probabilidad de nunca ser utilizada y en la segunda posiblemente los programadores teminen adquiriendo (o haciendo… Vease la entrevista con Jeroen) otra herramienta.

4.- Necesidad de soporte: Otro punto importante a evaluar es ver si tu empresa o cliente requiere del soporte que ofrece una herramienta, muchas veces por políticas o forma de trabajo de una empresa requiren de tener un contacto directo con los proovedores en soporte técnico de las herramientas y muchas otras prefieren tener a un experto en su personal que se encargue de todo esto. De igual forma existen herramientas que te ofrecen un gran soporte y otras que por su naturaleza de licenciamiento no pueden darse esos lujos.

5.- Integración con otras herramientas: Este punto es básico cuando ya contamos con ciertas herramientas o aplicaciones. Si tenemos un producto que nos ofrece una integración con lo que ya contamos puedo decir que se le pueden dar muchos puntos, ya que implica una mejora extra(Un plus) a todo nuestro proceso de pruebas o desarrollo.

6.- Complejidad del proyecto de automatización: Para nuestra elección también debemos de tomar en cuenta la aplicación y proyecto motivo de la automatización, al final de cuentas esta es la que nos impone las necesidades de la automatización. Entre las necesidades que hay que tomar en cuenta estan plataforma de la aplicación, reconocimiento de controles de la aplicación, complejidad de los módulos o flujos, entregables requeridos. Un ejemplo puede ser la necesidad de automatizar un proceso de alta extremadamente complejo que puede variar entre 10 y 100 campos… Esto con una aplicación tipo record and play es sumamente díficil, ya que los elementos para programar(si los tiene) son muy pobres con lo que hacer capaz al script de manejar todas las variantes es muy díficil, lo que nos pondrá en la necesidad de crear N cantidad de Scripts para N cantidad de variantes, los que nos puede volver locos al administrarlos. En cambio una herramienta de automatización que se puede combinar con un ambiente de desarrollo nos puede traer el beneficio de que con un solo script se puedan contemplar todas las variantes. Pero de igual forma si nuestas pruebas son muy simples no vale la pena crear un super script para automatizar el alta en un catálogo que cuenta solo de 5 campos.

7.- Afinidad a la herramienta: Como último punto y muy importante es considerar que a pesar de todo debemos de trabajar con la herramienta con la que estemos mas cómodos, es un hecho que existe una herramienta que nos puede ajustar perfectamente a nuestra necesidad pero muchas veces simplemente no hay esa química entre la aplicación y el equipo de automatización (Ojo hablo del equipo, no solo un individuo, no me estoy contradiciendo con el punto 1). Cuando esto sucede es bueno mirar al segundo lugar y posiblemente nos demos cuenta que aunque presenta algunos inconvenientes existe un buen trabajo con le herramienta, con lo que el equipo estará agusto, cosa que considero vital para que se saque adelante cualquier proyecto.

Pues bueno ya hace dos semanas que empecé esta entrada y hoy me senté a terminar los puntos 6 y 7, y el cierra de la entrada. Espero que lo que les puse en esta entrada les sea útil para elegir.

Por el momento los dejo y pronto espero postear nuevamente, ultimamente ha habido mucho mas trabajo lo cual es muy bueno por que ya hay mas ideas pal blog :p…

Sean Felices!!!

RSE

2 comentarios

  1. Buena entrada :D

    La evaluación de una herramienta es una tarea muy importante y nada sencilla.
    Justificando que yo marque al punto 6 como el más importante, quiero decir que la cantidad de dolores de cabeza al incorporar una automation tool es inversamente proporcional a la flexibilidad y documentación de dicha AT, mas el número de ojos sobre tí (uff.. fué solo un deshaogo :P ).
    Y como das a entender, no todas las herramientas funcionan para todo.
    El tema me anima a escribir una entrada resaltando las características técnicas a valuar en cualquier AT, independientes de los puntos que ya tratas en éste post.

    Saludos!

  2. [...] Ok también durante mi viaje a Oaxaca donde salió la entrada de “The Best Automation tool” (Tengo tendencia a poner solo títulos en inglés:p) comencé a escribir la primer review de [...]

Escribe un comentario