Está en la página 1de 23

Automation Testing

J.C.R.
Qué es Automation Testing?

 Automation Testing es una técnica de testing que utiliza una herramienta para ejecutar una
suite de test cases.
 El software de automation puede también ingresar data en el Sistema que se está
probando, comparar los resultados esperados con los actuales, y generar reportes
detallados.
El propósito de Automation

 El propósito de Automation es reducir el número de casos de prueba que se correrán


manualmente, Y NO ELIMINAR MANUAL TESTING.
Por qué Automation Testing?

 Automation Testing es importante por las siguientes razones:


 Manual Testing de todas las funcionalidades, todos los campos, los escenarios negativos, toma
tiempo y por tanto es inversion de dinero también.
 Es dificultoso probar sitios en diferentes lenguajes manualmente.
 Automation generalmente no require intervención humana. Por ejemplo, puedes ejecutar los
casos de prueba sin estar frente a la computadora (durante la noche).
 Automation aumenta la velocidad de las pruebas y el test coverage.
 Manual Testing puede ser aburrido algunas veces y ser propenso a errores humanos.
Qué casos de prueba automatizar?

 Casos de prueba que se repiten. Por ejemplo: Re-testing, Regression Testing.


 Casos de prueba que son tediosos o difíciles de ejecutar manualmente.
 Casos de prueba que quitan tiempo.
 Casos de prueba de alto riesgo que para el negocio.
Que casos de prueba NO automatizar?

 Casos de prueba que han sido recién creados y no han sido ejecutados todavía
manualmente.
 Casos de prueba para los cuales los requerimientos del cliente van cambiando
frecuentemente.
 Casos de prueba que se ejecutan esporádicamente.
Proceso de Automatización

 Selección de la herramienta:
 Depende de la tecnología de la aplicación que está siendo probada.
 ES IMPORTANTE REALIZAR UN POC (Proof of concept) DE LAS PRUEBAS ANTES DE
SELECCIONAR LA HERRAMIENTA PARA AUTOMATIZACIÓN.
Proceso de Automatización

 Definir el alcance de Automatización.


 Es el área de la aplicación que será probada utilizando Automatización.
Proceso de Automatización

 Planificación, Diseño y Desarrollo


 En ésta fase se creará una estrategia de automatización y un plan.
 Se crearán los casos de prueba automatizados para el área o áreas elegidas.
Proceso de Automatización

 Ejecución de las pruebas


 En ésta fase, los casos de prueba automatizados se ejecutarán.
Proceso de Automatización

 Mantenimiento
 Según se vayan aumentando nuevas funcionalidades en el Sistema que se está probando en
ciclos sucesivos, nuevos scripts de automatización necesitan ser adicionados, revisados, y
mantenidos para cada ciclo de lanzamiento (release cycle).
Herramientas de Automatización

 Entre las más conocidas están:


 Selenium, que es una herramienta de automatización web (open source).
 Cypress, herramienta de automatización web (similar a Selenium).
 QTP, herramienta utilizada para Functional Testing.
 TestCafe, herramienta de automatización web (similar a Selenium).
 Rational Robot, Herramienta IBM utilizada para automatizar regression, pruebas funcionales y
de configuración.
 Playwright, Serenity BDD, Jest, Junit, etc.
Seleccionar herramienta de AUT

 Algunos criterios a usar son:


 Fácil uso (lenguaje de scripting utilizado).
 Soporte para varios tipos de Test, incluyendo functional, test management, móvil, API, etc.
 Soporte para diferentes frameworks.
Seleccionar herramienta de AUT

 Primero, identificar los requerimientos.


 Segundo, explorar varias herramientas y sus capacidades.
 Tercero, establecer la expectativa de la herramienta.
 Finalmente realizar el POC (Proof of Concept).
Framework en Automatización

 Un framerowk es un conjunto de pautas de automatización que ayudan a:


 Mantener la consistencia de las pruebas.
 Menos mantenimiento del código.
 Mejora la re-usabilidad.
 Hay 4 tipos de framework utilizados en Automation Testing:
 Data Driven Automation Framework.
 Keyword Driven Automation Framework.
 Modular Automation Framework.
 Hybrid Automation Framework.
Framework en Automatización

 Data Driven Framework:


 Es un marco de prueba de automatización en el que los valores de entrada se leen de archivos de
datos y se almacenan en variables en scripts de prueba. Permite a los evaluadores crear casos de
prueba positivos y negativos en una sola prueba.
Framework en Automatización

 Keyword Driven Framework:


 Es un marco de prueba de automatización funcional que divide los casos de prueba en cuatro
partes diferentes para separar la codificación de los casos de prueba, y los pasos de prueba, para
una mejor automatización. El marco de prueba basado en palabras clave divide los casos de
prueba como pasos de prueba, objetos de pasos de prueba, acciones en pasos de prueba y datos
para objetos de prueba para una mejor comprensión.
Framework en Automatización

 Modular Automation Framework:


 Los scripts de prueba se desarrollan sobre la base de módulos o clústeres al dividir la aplicación
completa en varios bloques pequeños y autosuficientes. Por lo tanto, se crean scripts de prueba
individuales que pertenecen a un módulo o grupo en particular.
Framework en Automatización

 Hybrid Automation Framework:


 Es un concepto en el que estamos utilizando la ventaja tanto del Keyword Driven Framework
como del Data Driven Framework. Es un marco fácil de usar que permite a los evaluadores
manuales crear casos de prueba con solo mirar las palabras clave, los datos de prueba y el
repositorio de objetos sin codificar en el marco.
Buenas Prácticas de Automatización

 El alcance (scope) de Automatización necesita estar determinado en detalle antes de


empezar el Proyecto. Esto ayudará a que el cliente espere lo correcto.
 Seleccionar la herramienta correcta:
 Una herramienta no debe ser seleccionada basada en su popularidad, pero si debe ser
seleccionada basada en los requerimientos.
 Seleccionar el framework apropiado.
 Normas de scripting:
 Las normas de scripting deben de ser respetadas durante la creación de los scripts.
Buenas Prácticas de Automatización

 Medir métricas:
 El éxito de la automatización no se puede determinar comparando el esfuerzo manual con el
esfuerzo de automatización, sino también capturando métricas como:
 Porcentaje de defectos encontrados.
 Mejora en la Productividad
 Etc.
Conclusión

 Para tener una automatización exitosa, básicamente se necesita:


 Correcta selección de la herramienta.
 Proceso de testing y el equipo.

 Manual Testing y Automation Testing van mano a mano para un exitosa prueba del
Sistema.
- Unknown -

También podría gustarte