La automatización de pruebas es una técnica de pruebas donde se utilizan scripts y herramientas para controlar la ejecución de las pruebas y la comparación de los resultados reales con los resultados pronosticados. Dichas herramientas pueden automatizar algunas tareas repetitivas pero necesarias en un proceso de prueba formal ya implementado, o realizar pruebas adicionales que serían difíciles de hacer manualmente. La prueba manual es realizada por una persona sentada frente a una computadora que ejecuta cuidadosamente los pasos de la prueba. La automatización de pruebas es crítica para la entrega continua y las pruebas continuas.
Existen muchos enfoques para la automatización de pruebas, sin embargo, a continuación se detallan los enfoques generales utilizados ampliamente:
El software de automatización también puede ingresar datos de prueba en un sistema, comparar resultados esperados y reales para generar informes de prueba detallados.
Los ciclos de desarrollo sucesivos requerirán la ejecución del mismo conjunto de pruebas repetidamente. Con una herramienta de automatización de prueba, es posible grabar este conjunto de pruebas y reproducirlo según sea necesario. Una vez que el conjunto de pruebas está automatizado, no se requiere intervención humana. Esto mejora el ROI de la automatización de pruebas. El objetivo de la automatización es reducir el número de casos de prueba que se ejecutarán manualmente y no eliminar por completo las pruebas manuales.
Las pruebas automatizadas de software son importantes debido a las siguientes razones:
Los casos de prueba a automatizar se pueden seleccionar utilizando el siguiente criterio para aumentar el ROI de la automatización
La siguiente categoría de casos de prueba no es adecuada para la automatización: