Categorías
Compus

Automatización de pruebas

Hace un mes empecé a aprender sobre Automation Testing.

Cuando empecé mi vida profesional, empecé programando en backend en Javascript con Node.js, eventualmente en ese mismo trabajo me movieron para empezar con el área de Aseguramiento de Calidad (QA); como la empresa era chiquita (como yo), apenas si empecé con pruebas manuales y pequeños scripts para hacer transacciones que medio estresaran a los servidores. Era un trabajo que la verdad disfrutaba mucho, ahí empecé a ver la importancia de los buenos procesos en los ciclos del software, la documentación, las llamadas «mejores prácticas» y vi que mi lugar en este ciclo era en verdad importante. Tuve que dejar ese trabajo para empezar mi servicio social y acabar la escuela, pero tengo que admitir que nunca dejé de pensar en QA. Luego seguí en backend, pasé por cybersec y pum, los caminos de la vida me trajeron a QA de nuevo.

Pero qué es probar software, qué es automatizarlo

Pues luego de haberlo hecho empírica e intuitivamente, ya aprendí un poco:

Probar software es un proceso en el que ejecutamos un componente de un sistema (o el sistema entero) para evaluar aspectos específicos bajo condiciones específicas, observando y registrando el resultado. La intención de hacer pruebas es encontrar errores o/y certificar su calidad.

Automatizar esto es utilizar herramientas de software especializadas para ejecutar conjuntos de casos de prueba. Su objetivo es reducir los conjuntos de pruebas manuales.

Las diferencias entre hacer pruebas automatizadas y manuales reside en lo siguiente, las pruebas manuales hasta cierto punto son efectivas en costo, alcanzan gran profundidad y son ágiles; sin embargo las automatizadas son rápidas en ejecución, eficientes, reutilizables y confiables.

¿Cómo saber si vale la pena automatizar una prueba?

Automatizar pruebas puede sonar como la panacea, sin embargo no hay forma de hacer testing exhaustivo, es imposible, costoso de intentar y pesado a nivel técnico; por lo tanto hay pruebas que no convienen ser automatizadas. Voy a anotar aquí algunas preguntas, para saber si vale la pena automatizar un caso de uso:

  • ¿Es un caso crítico o frecuentemente usado?
  • ¿Queremos automatizarlo porque implica una situación legal?
  • ¿Requiere de gran cantidad de información o mucha configuración de ambiente?
  • ¿Es potencialmente reutilizable?

Mientras más «sí» haya en las respuestas a estas preguntas, automatizar esta prueba es más valioso. En otras palabras, automatizamos una prueba cuando:

  • Tenemos una tarea repetitiva.
  • La tarea es de bajo riesgo, estable y no cambia frecuentemente.
  • Es suceptible a errores humanos.
  • Puede consumir mucho tiempo.
  • Hay una espera significante entre pasos.
  • Automatizarla representa ahorro de tiempo.

Y pues ya, eso estaré haciendo ahora 🙂

Una respuesta a «Automatización de pruebas»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *