Al hablar de QA nos referimos a Quality Assurance, quien es la persona en los proyectos a cargo de asegurarse de que todo se esté desarrollando sin errores y con la calidad requerida.
El termino QA Automation se refiere al proceso de automatización de esta tarea, utilizando distintas herramientas y software para lograrlo. Este proceso garantiza la calidad de los proyectos en desarrollo, además de liberar al personal humano para poder dedicarse a los detalles más importantes de la aplicación o producto.
Las pruebas de automatización manejan muchas de las tareas que consumen mucho tiempo y que anteriormente realizaban los probadores manuales. Es especialmente útil para la integración y la entrega continuas, donde el software se desarrolla, prueba e implementa varias veces al día, en lugar de por etapas.
La principal diferencia entre ambos procesos es que una persona que se dedica a las pruebas de calidad sigue un plan escrito previamente establecido, informando a los desarrolladores de cualquier error que consigan, mientras que una prueba de calidad automatizada se vale de herramientas especiales para esto y genera resultados una vez que finalice la prueba.
Está la particularidad de que ambos métodos se pueden utilizar al mismo tiempo, cada uno enfocado en una parte específica del proyecto. Por ejemplo, una prueba manual es ideal para analizar la experiencia de usuario y apariencia de la aplicación, mientras que el QA automatizado es preferible en pruebas de software a gran escala ya que ahorra tiempo, especialmente en las pruebas de regresión.
Una ventaja que tiene el QA automatizado es que el proceso y los scripts de prueba son reutilizables, esto es de ayuda para las pruebas de ejecución repetidas y ciclos de desarrollo sucesivos. Las pruebas automatizadas también pueden ejecutarse durante las 24 horas del día.
Recursos bien utilizados
Cuando se aplica una prueba de calidad automatizada se ejecutan pruebas funcionales y regresión sin ninguna intervención humana, por lo que los miembros del equipo de QA pueden aplicar sus conocimientos en otras pruebas avanzadas y que requieren mayor cuidado.
El control de calidad automatizado beneficia el proceso de desarrollo de software al aumentar la cobertura de las pruebas, reducir el tiempo de las pruebas, minimizar el error humano y permitir la integración y la entrega continuas (CI/CD).
Los tipos de pruebas que se pueden automatizar en control de calidad incluyen pruebas unitarias, pruebas de integración, pruebas funcionales, pruebas de regresión, pruebas de rendimiento y pruebas de carga.