Diseñar e implementar una estrategia de automatización de pruebas puede ser abrumador. Hay varios puntos a considerar y al investigar, se hallará muchos puntos de vista a considerar. La forma en que se desarrolla e implementa una estrategia de automatización es única para las necesidades y habilidades de cada organización. En esta serie de artículos de tres partes, se proporcionarán algunas ideas sobre cómo diseñar e implementar estas estrategias.
Después de leer la publicación anterior, ahora debería tener una comprensión sólida de cuáles son sus objetivos de automatización y quién será el propietario de las diversas tareas para su automatización.
Tabla de contenido de la serie “Cómo elaborar una estrategia de automatización de pruebas”
- Capítulo 1 – Identificar los objetivos y responsables
- Estás aquí → Capítulo 2 – ¿Qué debe tener una herramienta de automatización?
- Capítulo 3 – ¿Qué debemos automatizar?
💡 Tal vez te interese el artículo Hoja de ruta para convertirse en un Automatizador de Pruebas.
Capítulo 2: ¿Qué debe tener una herramienta de automatización?
Antes de que pueda comenzar a escribir scripts, primero debe identificar qué herramientas necesitará su organización para implementar la automatización de las pruebas. Esto es extremadamente exclusivo de cada organización, por lo que, en lugar de describir los cientos de herramientas disponibles en el mercado, este artículo listará 13 cosas a considerar al seleccionar un conjunto de herramientas.
- Lenguaje de programación: elija una herramienta que se combine con el que usan los desarrolladores del proyecto. Hacer esto, facilita que sus desarrolladores contribuyan al proyecto de automatización.
- Compatibilidad con el código y la herramienta de desarrollo: ¿La herramienta es compatible con todas las demás herramientas y objetos utilizados en el código?
- “Las herramientas no prueban”: Dorothy Graham habla específicamente sobre lo que hacen las herramientas y lo que hacen las personas. Las herramientas ejecutan pruebas; la gente los escribe. Es un concepto importante de entender. Aquí está la charla si estás interesado.
- Facilidad de uso: elija la herramienta que mejor ayude a su equipo a desarrollar y mantener scripts, ejecutar pruebas, depurar y validar fallas.
- Comprenda las aplicaciones que se están probando: ¿Va a escribir automatización para dispositivos móviles, de escritorio o web? ¿Se deben tener en cuenta las pruebas entre navegadores (cross-browser) y dispositivos?
- Considere su presupuesto: existen soluciones sólidas de bajo costo o sin costo en el mercado. Quizás tenga un proyecto más grande o requisitos únicos que considerar. Comprender cuál es su presupuesto por adelantado lo ayudará a asegurarse de elegir una pila (stack) de tecnología de automatización que se ajuste a ese presupuesto. No olvide verificar cómo le cobran por su proyecto: precio único, por proyectos, licencias por tiempo, etc.
- Haga una prueba de concepto (POC: Proof of concept): tómese el tiempo para examinar la herramienta que cree que desea implementar. Comience con un puñado de escenarios en cada capa. Familiarícese con la creación de scripts, la ejecución y la generación de informes. Instale una versión de prueba (trial) y determine si puede obtener todas las funciones que necesita.
- Métricas o necesidades de informes (reporting): algunas herramientas hacen informes precisos, otras requieren procesos tediosos y hasta desarrollo de macros, y en otras, toca hacerlos completamente a mano. Si los informes y las métricas son importantes para su organización, asegúrese de considerar esto en su POC.
- Elija una herramienta que tenga una gran comunidad de apoyo: cualquier desarrollador le dirá que contar con el apoyo de la comunidad es imperativo para su éxito.
- Piense en su estrategia de CI/CD: ¿Será necesario que sus herramientas de automatización se integren con las herramientas de DevOps? Ejecutar la automatización como parte de un pipeline de compilación y despliegue puede ser un objetivo para la organización. Si es así, asegúrese de elegir una herramienta que apoye ese objetivo.
- Prueba de carga o desempeño: ¿Será necesario utilizar esta herramienta para automatizar la creación de scripts para simular la carga en su aplicación?
- Datos de prueba: Asegúrese de que la herramienta que está considerando permite la entrada de data desde archivos de datos como XML, JSON, CSV, Excel, etc.
- Integración de la gestión de bugs: es posible que desee que se archiven los defectos (bugs) a medida que se ejecuta la automatización. Si es necesario, asegúrese de que su pila (stack) de herramientas de automatización se integre con su herramienta de gestión de defectos.
Conclusión
Notará en esta publicación que no se menciona ninguna herramienta o lenguaje específico. Esto es porque cada organización es única y debe tener su propio análisis. Los puntos anteriores le guiarán en ese proceso de análisis.
Elegir un conjunto de herramientas que se adapte a su pila (stack) de tecnología existente, quizás la futura, y a su presupuesto son tres de las consideraciones más importantes.
Fuentes
Basado en Automation Test Strategy: What Should I Look For In a Tool? por Johanna South.
Imagen por Firmbee.com en Unsplash.