Marcos de automatización de pruebas: ¡cosas que debe saber!

Tabla de contenido:

Anonim

En este tutorial, aprenderá

  • ¿Qué es un marco?
  • ¿Qué es un marco de automatización TEST?
  • Tipos de marco de automatización
  • 1) Scripting lineal: grabación y reproducción
  • 2) El marco de arquitectura de la biblioteca de pruebas.
  • 3) El marco de pruebas basado en datos.
  • 4) El marco de prueba basado en palabras clave o basado en tablas.
  • 5) El marco de automatización de pruebas híbridas.

¿Qué es un marco?

En lugar de proporcionar una definición libresca de un marco, consideremos un ejemplo.

Estoy seguro de que ha asistido a un seminario / conferencia / conferencia donde se pidió a los participantes que observaran las siguientes pautas:

  • Los participantes deben ocupar su asiento 5 minutos antes del comienzo de una conferencia.
  • Lleve consigo un cuaderno y un bolígrafo para tomar notas.
  • Lea el resumen para tener una idea de de qué se tratará la presentación.
  • Los teléfonos móviles deben configurarse en silencio
  • Use las puertas de salida en el extremo opuesto al orador si necesita salir en medio de la conferencia.
  • Las preguntas se tomarán al final de la sesión.

¿Crees que puedes realizar un seminario SIN observar estas pautas ????

¡La respuesta es un gran SÍ! Ciertamente, puede realizar un seminario / conferencia / conferencia / demostración sin las pautas anteriores (de hecho, algunos de nosotros no las seguiremos a pesar de que están establecidas ... :-)

Pero si se siguen las pautas, se obtendrá un resultado beneficioso como una menor distracción de la audiencia durante la conferencia y una mayor retención de los participantes y comprensión del tema.

Con base en lo anterior, un Marco puede definirse como un conjunto de pautas que cuando se siguen producen resultados beneficiosos.

¿Qué es un marco de automatización TEST?

Un conjunto de pautas como estándares de codificación, manejo de datos de prueba, tratamiento de repositorios de objetos, etc., que cuando se siguen durante la automatización de secuencias de comandos producen resultados beneficiosos como aumento de la reutilización de código, mayor portabilidad, menor costo de mantenimiento de secuencias de comandos, etc. Tenga en cuenta que estas son solo pautas y no reglas; no son obligatorios y aún puede crear secuencias de comandos sin seguir las pautas. Pero se perderá las ventajas de tener un Framework.

Tipos de marco de automatización

1) Scripting lineal
2) El marco de arquitectura de la biblioteca de pruebas.
3) El marco de pruebas basado en datos.
4) El marco de prueba basado en palabras clave o basado en tablas.
5) El marco de automatización de pruebas híbridas.

Veámoslos en detalle:

1) Scripting lineal: grabación y reproducción

Es el más simple de todos los Frameworks y también conocido como "Record & Playback" . En este Framework, Tester registra manualmente cada paso (navegación y entradas del usuario), inserta puntos de control (pasos de validación) en la primera ronda. Luego, reproduce el guión grabado en las rondas siguientes.

Por ejemplo: considere iniciar sesión en la aplicación de reserva de vuelo y verificar si la aplicación se ha cargado al iniciar sesión correctamente. Aquí, el probador simplemente registrará los pasos y agregará pasos de validación.

SystemUtil.Run "flight4a.exe", "", "", "abrir"Diálogo ("Iniciar sesión"). WinEdit ("Nombre del agente:"). Establecer "Guru99"Diálogo ("Iniciar sesión"). WinEdit ("Contraseña:"). Establecer "Mercury"Cuadro de diálogo ("Iniciar sesión"). WinButton ("Aceptar"). Haga clic en'Comprobar que la ventana de reserva de vuelo se haya cargado después de iniciar sesión correctamenteVentana ("Reserva de vuelo"). Check CheckPoint ("Reserva de vuelo")

Ventajas

  • La forma más rápida de generar un script
  • No se requiere experiencia en automatización
  • La forma más sencilla de conocer las funciones de la herramienta de prueba

Desventajas

  • Poca reutilización de guiones
  • Los datos de prueba están codificados en el script
  • Pesadilla de mantenimiento

2) El marco de arquitectura de la biblioteca de pruebas.

También se conoce como "Scripting estructurado" o "Descomposición funcional".

En este marco, los scripts de prueba se registran inicialmente mediante el método "Record & Playback". Posteriormente, las tareas comunes dentro de los scripts se identifican y agrupan en Funciones. Estas funciones son llamadas por el script de prueba principal llamado Driver de diferentes formas para crear casos de prueba.

Ej .: Usando el mismo ejemplo anterior, la función para iniciar sesión en la Reserva de Vuelo se verá así.

Función de inicio de sesión ()SystemUtil.Run "flight4a.exe", "", "", "abrir"Diálogo ("Iniciar sesión"). WinEdit ("Nombre del agente:"). Establecer "Guru99"Diálogo ("Iniciar sesión"). WinEdit ("Contraseña:"). Establecer "Mercury"Cuadro de diálogo ("Iniciar sesión"). WinButton ("Aceptar"). Haga clic enFunción final

Ahora, llamará a esta función en el script principal de la siguiente manera

Iniciar sesión de llamada ()---------------------------Otras llamadas a funciones / pasos de prueba.---------------------------

Ventajas

  • Se logra un mayor nivel de reutilización de código en Scripts estructurados en comparación con "Grabar y reproducir"
  • Los scripts de automatización son menos costosos de desarrollar debido a una mayor reutilización del código.
  • Mantenimiento de secuencias de comandos más sencillo

Desventajas

  • Se necesita experiencia técnica para escribir scripts utilizando Test Library Framework.
  • Se necesita más tiempo para planificar y preparar los guiones de prueba.
  • Los datos de prueba están codificados dentro de los scripts

3) El marco de pruebas basado en datos.

En este marco, mientras que la lógica del caso de prueba reside en los scripts de prueba, los datos de prueba se separan y se mantienen fuera de los scripts de prueba. Los datos de prueba se leen de los archivos externos (archivos de Excel, archivos de texto, archivos CSV, fuentes ODBC, objetos DAO, objetos ADO) y se cargan en las variables dentro del script de prueba. Las variables se utilizan tanto para los valores de entrada como para los valores de verificación. Los propios scripts de prueba se preparan utilizando Linear Scripting o Test Library Framework.

Ej .: Desarrollar el script de inicio de sesión de reserva de vuelo utilizando este método implicará dos pasos.

Paso 1) Cree un archivo de datos de prueba que podría ser Excel, CSV o cualquier otra fuente de base de datos.

Nombre del agente

Contraseña

Palanqueta

Mercurio

Tina

MERCURIO

Cuenta

Mercurio

Paso 2) Desarrolle el guión de prueba y haga referencias a su fuente de datos de prueba.

SystemUtil.Run "flight4a.exe", "", "", "abrir"Diálogo ("Iniciar sesión"). WinEdit ("Nombre del agente:"). Establecer DataTable ("Nombre del agente", dtGlobalSheet)Diálogo ("Iniciar sesión"). WinEdit ("Contraseña:"). Establecer DataTable ("Contraseña", dtGlobalSheet)Cuadro de diálogo ("Iniciar sesión"). WinButton ("Aceptar"). Haga clic enSe ha cargado la ventana Comprobar reserva de vuelosVentana ("Reserva de vuelo"). Check CheckPoint ("Reserva de vuelo")** Tenga en cuenta que "dtGlobalSheet" es la hoja de Excel predeterminada proporcionada por QTP.

Ventajas

  • Los cambios en los scripts de prueba no afectan los datos de prueba
  • Los casos de prueba se pueden ejecutar con múltiples conjuntos de datos
  • Se puede ejecutar una variedad de escenarios de prueba simplemente variando los datos de prueba en el archivo de datos externos

Desventajas

  • Se necesita más tiempo para planificar y preparar tanto los scripts de prueba como los datos de prueba

4) El marco de prueba basado en palabras clave o basado en tablas.

El marco basado en palabras clave o basado en tablas requiere el desarrollo de tablas de datos y palabras clave, independientemente de la herramienta de automatización de pruebas utilizada para ejecutarlas. Las pruebas se pueden diseñar con o sin la Aplicación. En una prueba basada en palabras clave, la funcionalidad de la aplicación bajo prueba se documenta en una tabla, así como en instrucciones paso a paso para cada prueba.

Hay 3 componentes básicos de un marco basado en palabras clave, a saber. Palabra clave, mapa de aplicación, función de componente.

¿Qué es una palabra clave?

La palabra clave es una acción que se puede realizar en un componente de la GUI. Ex . Para el cuadro de texto del componente GUI, algunas palabras clave (acción) serían InputText, VerifyValue, VerifyProperty, etc.

¿Qué es el mapa de aplicaciones?

Un mapa de aplicación proporciona referencias con nombre para los componentes de la GUI. Los mapas de aplicaciones no son más que un " repositorio de objetos "

¿Qué es la función de componente?

Las funciones de componentes son aquellas funciones que manipulan o interrogan activamente al componente de la GUI. Un ejemplo de una función sería hacer clic en el botón web con todo el manejo de errores, ingresar datos en una edición web con todo el manejo de errores. Las funciones de los componentes pueden ser independientes o dependientes de la aplicación.

Ej . : Para entender la Vista de palabras clave, tomemos el mismo ejemplo. Involucra 2 pasos

Paso 1 : Creación de la tabla de datos (diferente de la tabla de datos de prueba creada en el marco basado en datos). Esta tabla de datos contiene la acción que se debe realizar en los objetos GUI y los argumentos correspondientes, si los hubiera. Cada fila representa un paso de prueba.

Objeto

(MAPA de la aplicación)

Acción

(PALABRAS CLAVE)

Argumento

WinEdit (nombre del agente)
Colocar
Guru99
WinEdit (contraseña)
Colocar
Mercurio
WinButton (Aceptar)
Hacer clic
Ventana (reserva de vuelo)
Verificar
Existe

Paso 2 : escribir código en forma de funciones de componentes.

Una vez que haya creado su (s) tabla (s) de datos, simplemente escriba un programa o un conjunto de scripts que lea en cada paso, ejecute el paso según la palabra clave contenida en el campo Acción, realice la verificación de errores y registre cualquier información relevante. Este programa o conjunto de scripts se vería similar al pseudocódigo siguiente:

Función principal (){Llame a ConnectTable (Nombre de la mesa) {// Función de llamada para conectarse a la mesa.while (Call TableParser ()! = -1) // Llamando a la función para analizar y extraer valores de la tabla.{Pase valores a las funciones de COMPONENTES apropiadas, como Conjunto (Nombre de objeto, Argumento), por ejemplo, Conjunto (Nombre de agente, Guru99)}}Llame a CloseConnection () // Función para cerrar la conexión después de que se haya realizado toda la operación.} // Fin de main

Eso es todo para Keyword Driven Framework.

La ventaja del marco basado en palabras clave es que las palabras clave son reutilizables. Para comprender esto, considere que desea verificar la operación de inicio de sesión para un sitio web, diga YAHOO MAIL. La mesa se verá así:

Objeto (MAPA DE APLICACIÓN) Acción (PALABRA CLAVE) Argumento
WebEdit (Nombre de usuario) Colocar Esta dirección de correo electrónico está protegida contra spambots. Necesita tener JavaScript habilitado para verlo.
WebEdit (contraseña) Colocar xxxxx
WebButton (Aceptar) Hacer clic
Ventana (Correo de Yahoo) Verificar Cargas

Si observa en este caso que el conjunto de palabras clave, haga clic, verifique siguen siendo los mismos para los que las funciones de los componentes correspondientes ya están desarrolladas. Todo lo que necesita hacer es cambiar la asignación de aplicaciones (repositorio de objetos) de la reserva de vuelo anterior a Yahoo Mail, con un cambio en los valores de los argumentos y el mismo script funcionará.

Ventajas

  • Proporciona una alta reutilización de código
  • Herramienta de prueba independiente
  • Independientemente de la aplicación bajo prueba, el mismo script funciona para AUT (con algunas limitaciones)
  • Las pruebas se pueden diseñar con o sin AUT

Desventajas

  • Dado que la inversión inicial es bastante alta, los beneficios de esto solo se pueden obtener si la aplicación es considerablemente grande y los scripts de prueba deben mantenerse durante bastantes años.
  • Se requiere una gran experiencia en automatización para crear el marco basado en palabras clave.

NOTA: Aunque Micro Focus UFT se anuncia a sí mismo como KeyWord Driven Framework, no puede lograr la independencia completa de la aplicación y la herramienta de prueba con HP UFT.

5) El marco de automatización de pruebas híbridas.

Como su nombre indica, este marco es la combinación de uno o más marcos discutidos anteriormente que aprovechan sus fortalezas y tratan de mitigar sus debilidades. Este marco de automatización de pruebas híbrido es en lo que la mayoría de los marcos evolucionan a lo largo del tiempo y en múltiples proyectos. La industria máxima utiliza el marco de palabras clave en una combinación del método de descomposición de funciones.

PD: Otros Frameworks dignos de mención son

Marco de prueba de modularidad

En este marco, una tarea común en el script de prueba se agrupa como Módulos.

Ej : El uso de Acciones en el uso de QTP puede crear un Scripts Modualr

Ejemplo de secuencia de comandos para iniciar sesión

SystemUtil.Run "flight4a.exe", "", "", "abrir"Diálogo ("Iniciar sesión"). WinEdit ("Nombre del agente:"). Establecer "Guru99"Diálogo ("Iniciar sesión"). WinEdit ("Contraseña:"). Establecer "Mercury"Cuadro de diálogo ("Iniciar sesión"). WinButton ("Aceptar"). Haga clic en'Fin del guión

Ahora puede llamar a esta acción en el script principal de la siguiente manera:

RunAction ("Iniciar sesión [Argumento]", oneIteration)

Pruebas de procesos comerciales (BPT)

Estos marcos dividen los grandes procesos de negocio en componentes que se pueden reutilizar varias veces en los mismos scripts de prueba o en diferentes. Por ejemplo, el proceso empresarial de reservar un vuelo se divide en componentes como inicio de sesión, búsqueda de vuelos, reserva, pago y cierre de sesión, que se pueden reutilizar en el mismo proceso empresarial o en diferentes procesos. Además, BPT facilita una coordinación más estrecha entre las PYME y los ingenieros de automatización.