Testing Colombia

Testing con calidad

Comunidad

Automatización de Pruebas, mejores practicas Parte 2

Parte Anterior

4. Automatización de pruebas es desarrollo: Las tareas de automatización de pruebas en el fondo son desarrollo de software, por lo cual hace necesario tener competencias en el manejo de programación, algunas herramientas del mercado generan código a través de grabación de sesiones de usuario sobre la aplicación, también llamado «Record and play back», lo cual no es netamente confiable y se adapta poco a lo que se busca al trabajar sobre un «Framework de pruebas», adicional que puede ser necesario automatizar casos de pruebas específicos del negocio, con lo cual es necesario escribir funcionalidades personalizadas.

5. Herramienta adaptable al equipo de automatización:  la herramienta de trabajo debe ser de total dominio del equipo de trabajo, con lo cual es necesario antes de iniciar la automatización de un plan de pruebas, tener el trainning adecuado sobre la herramienta, la elección de la misma también se debería hacer en busca de cubrir las necesidades del negocio y adaptable a las habilidades del equipo de trabajo («lenguajes de programación mas conocidos»).
6. Controlar todo el entorno de la automatización: Intentar automatizar un plan de pruebas de una aplicación donde no se tiene un control suficiente del entorno de pruebas, puede ser el inicio de un esfuerzo que no tendrá resultados al mediano y largo plazo, debido a las tareas de desarrollo y ejecución de pruebas sobre los recursos del entorno, el  equipo debería estar en capacidad de manipular y configurar entornos de prueba para llevar a cabo la automatización, en caso contrario esto se convierte en un riesgo en los planes de la automatización.
7. Entornos Independientes: La naturaleza de la automatización de pruebas esta basada en que un autómata es capaz de realizar acciones de usuario sobre un sistema y saber identificar si el resultado obtenido de las mismas es correcto, esto debido a que se puede parametrizar las condiciones iniciales de el entorno donde se trabajara, por lo tanto estos entornos deben ser de uso exclusivo para la automatización de pruebas, pensar en compartir un entorno con tareas como pruebas manuales o entornos de pruebas para los desarrolladores, equivale a asumir riesgos que pueden llevar a no lograr alcanzar el objetivo de la automatización.
8. NO olvidar siempre restaurar el entorno: Cada ejecución de pruebas conlleva a la utilización de ambientes de pruebas que de una u otra forma manipulan datos, recursos, generan nuevos archivos, etc, esto es un asunto a tratar con la automatización, esta debe estar en capacidad de dejar el entorno de pruebas en un punto inicial donde se pueda lanzar una nueva ejecución, hoy en día se emplean técnicas de virtualizacion que permiten capturar configuraciones de el entorno en puntos claves y hacen mas fácil estas tareas de «restore» entre diferentes puntos como se desee. En lo personal he tenido la oportunidad de trabajar con entornos virtualizados sobre «VMWARE» y facilita mucho estas tareas al poder lanzar pruebas y tener en minutos un entorno restaurado y listo para una nueva ejecución sin necesidad de desarrollar scripts para esto. ver https://www.vmware.com/mx/solutions/virtualization.html

Siguiente Parte

 

Deja un comentario

Tema creado por Anders Norén