Icono del sitio Alexander Andrade

Hoja de ruta para convertirse en un Automatizador de pruebas – Parte 3

Esta es la tercera y última parte del capítulo… haz clic aquí para ver la primera parte o clic acá para ver la segunda parte.

¿Qué herramienta usar?

La elección de la herramienta depende de la elección de la tecnología seleccionada anteriormente. Las herramientas más conocidas, hasta el momento de escritura de este post, son:

Si decidió comenzar a aprender a automatizar aplicaciones web, Selenium podría ser un gran candidato. El siguiente paso sería evolucionar a aprender con Selenium el SerenityBDD y el patrón de diseño ScreenPlay., para lo cual te recomiendo los tutoriales paso a paso de Julian Mesa titulados Curso Serenity BDD / ScreenPlay en Español.

Estrategia y planificación de automatización de pruebas

Una de las partes más importantes de su trabajo como ingeniero de pruebas de automatización podría ser colaborar con un equipo de desarrolladores, propietarios de productos (Product Owners) y analistas de productos con el fin de definir una estrategia de prueba para las funciones nuevas y existentes. Desafortunadamente, muchas personas se equivocan con el sueño de que automatizarán todo y ya no necesitarán testers. Es cierto que, en el actual entorno acelerado, la automatización de pruebas es tan importante, sin embargo, nada puede reemplazar a un buen Ingeniero de Pruebas Funcionales o Exploratorias. La calidad del software sería mayor si los evaluadores pudieran omitir las tareas repetitivas de rutina y centrarse en las pruebas exploratorias y funcionales.

La necesidad de realizar pruebas es alta cuando se desarrollan nuevas funciones. Los ingenieros de pruebas deben analizar las nuevas funciones desde todos los ángulos, aplicar diferentes heurísticas y descubrir los errores más costosos de la aplicación. En una situación ideal, la automatización de pruebas debe escribirse mientras se trabaja en la función y debe cubrir la funcionalidad de la función principal o el valor de la historia de usuario. De esta manera, una vez que esté listo para entrar en producción, los escenarios automatizados garantizarán que una característica continúe funcionando como se espera después de la próxima versión.

Deberá responder las siguientes preguntas para crear la estrategia de automatización de pruebas:

Pero antes de comenzar cualquier planificación, deberá asegurarse de que usted y su equipo comprendan cuál es el objetivo que está tratando de lograr con la automatización de pruebas. También tendrá que documentar todas las decisiones tomadas y tener un ciclo de retroalimentación para mejorar continuamente la estrategia de automatización de pruebas en función de las lecciones aprendidas durante su implementación.

 Setting a Foundation for Successful Test Automation (Sentar las bases para una automatización de pruebas exitosa) es un excelente curso gratuito de Angie Jones, que puede ayudarlo a aprender cómo desarrollar una estrategia de automatización de pruebas, así como a explorar otras consideraciones sobre cómo iniciar la automatización de pruebas en su organización. También hay una serie de excelentes recursos al respecto en el sitio web del Ministry of Testing, por ejemplo, un taller de  Leading a Test Automation Strategy (Estrategia líder en automatización de pruebas) a cargo de Dana Aonofriesei.

Tenga en cuenta que una estrategia de prueba debe ser un documento en constante evolución que se mejorará con el tiempo mediante el análisis repetitivo y la colaboración con el equipo. Al intentar hacerlo perfecto la primera vez, perderá tiempo y energía a la hora de hacer el trabajo real.

Integración con herramientas de despliegue continuo

Como ingeniero de automatización de pruebas, definitivamente necesitará obtener una comprensión más profunda de DevOps y metodologías ágiles. La capacidad de utilizar herramientas de despliegue e integración continua (CI/CD) es una habilidad importante. Deberá comprender cómo puede lograr una entrega continua confiable de nuevas funciones cuando la compilación y muchas de las pruebas están automatizadas. Hay muchos recursos en Internet para cubrir este tema. Es recomendable el libro de Katrina Clokie «A Practical Guide to Testing in DevOps» y un curso gratuito “Continuous Integration with Jenkins»de Test Automation University.

Construcción de utilidades / herramientas para respaldar las pruebas diarias

La otra cosa que puede hacer es crear utilidades y herramientas para ayudar a automatizar tareas repetitivas y aburridas, o conectar los componentes del sistema CI / CD. Puede ser cualquier cosa que consuma mucho tiempo o puede ser una tarea que facilite el flujo de trabajo de su equipo y reduzca la sobrecarga manual. Algunos ejemplos de las herramientas que podría crear:

Esta lista podría ser interminable, siempre debe buscar áreas de mejora, ya que la automatización tiene que ver con la eficiencia.

Otras cosas para aprender

Este es un panorama en constante cambio y que requiere un aprendizaje continuo y una mentalidad de crecimiento. En el mundo de las tecnologías de la información, existe una lista interminable de tecnologías que puede aprender a mejorar aún más y mejorar realmente sus habilidades. Por ejemplo, puede agregar a su lista de aprendizaje:

Pero tenga en cuenta que no puede cubrir todo a la vez, así que concéntrese primero en el plan que creó para usted mismo y luego concéntrese en los temas avanzados una vez que se sienta más familiarizado y confiado con los conceptos básicos.

Conclusión

En resumen, ¿por dónde debería empezar si quiere aprender la automatización de pruebas?

Espero que esta hoja de ruta le anime a crear un plan de acción para convertirse en ingeniero de automatización de pruebas. Empiece poco a poco, revise su progreso con regularidad y lo logrará.

Fuentes

Inspirado en: Roadmap To Becoming A Test Automation Engineer por Yulia Tekin

Imagen por Matt Duncan en Unsplash

Author: Alexander Andrade

Ingeniero de Sistemas, MBA y Especialista en Gerencia de Proyectos Tel: +57-317-241-5118
Salir de la versión móvil