¿Qué son las pruebas de automatización? - Proceso de prueba y sus tipos

Pruebe Nuestro Instrumento Para Eliminar Los Problemas





El software se vuelve más valioso e importante a medida que damos la bienvenida a nuevas aplicaciones y dispositivos a nuestros hogares y negocios para tomar el mando de una tarea importante. El 16 de abrilthEn 1994, un avión fatal se estrelló, justo antes de aterrizar en el aeropuerto. Donde murieron 250 personas, que fue el accidente más mortal en las aerolíneas de China. La principal causa del incidente se debió a errores de software. Los usuarios de software no fueron probados antes de implementarlo. Todos los sistemas tienen errores de software. Es imposible diseñar un sistema de software sin errores. Pero la falla causada por errores de software en el sistema se puede proteger realizando pruebas de software. La prueba de software es un proceso que se utiliza para encontrar el error, la integridad y la calidad del software informático desarrollado. Incluye un conjunto de actividades realizadas con la intención de encontrar errores en el software para poder corregirlo antes de que el producto se lance a los usuarios finales. Hay dos tipos de procedimientos de prueba, pruebas manuales y automatización pruebas.

¿Qué son las pruebas de automatización?

Las pruebas automatizadas utilizan la ayuda de herramientas, scripts y software para realizar casos de prueba repitiendo acciones predefinidas. Depende completamente de la prueba pre-guion, donde comparamos el resultado esperado con el real cuando se ejecuta el pre-guion. Las pruebas como la carga, el estrés y el pico se pueden probar utilizando herramientas de automatización. Ejemplo: Facebook está probando una interfaz cerebro-computadora, que puede traducir pensamientos en textos digitales.




¿Qué casos de prueba deben automatizarse primero?

Los siguientes son los casos de prueba que se automatizarán en primer lugar,

  • Tarea repetida - Un ejemplo como un sitio de comercio electrónico que prueba las credenciales de inicio de sesión varias veces, para asegurarse de que la página de inicio de sesión funcione según los requisitos del usuario.
  • Capturar y compartir resultados - En lugar de hacer cálculos numéricos y hacer gráficos, invertir en herramientas o estrategias de automatización puede ser útil, donde se puede ahorrar tiempo.
  • Prueba de ingreso de datos - Automatizar la información en la fuente de datos para que sea fácilmente accesible para leer. Donde se puede manejar mejor la variabilidad de los datos. Es entonces cuando uno quiere buscar datos particulares entre miles de datos, se puede utilizar la herramienta de automatización para buscar los datos particulares.
  • Respuesta de cribado o tiempo - No es necesario realizar un seguimiento de la pantalla manualmente, se puede mejorar utilizando el código automatizado 'esperar hasta'.
  • Pruebas no funcionales - Un ejemplo de la automatización del tipo de prueba no funcional es la automatización de las pruebas de carga. Si tenemos una carga de diez mil en lugar de realizar pruebas manualmente, es una mejor opción utilizar las pruebas de automatización.

Proceso de prueba de automatización

El procedimiento paso a paso utilizado para la prueba de automatización es



automatización - prueba - proceso

proceso de prueba de automatización

1). Selección de herramienta de prueba

La elección de la herramienta adecuada en función de la naturaleza de la prueba involucrada es muy importante para que la automatización tenga éxito. Para una prueba, proceso o interfaz gráfica del usuario -basadas en pruebas, las herramientas adecuadas deben seleccionarse en consecuencia.


2). Definir el alcance de la automatización

El alcance de la automatización juega un papel fundamental. Por ejemplo, las características importantes para cualquier empresa son los escenarios que tienen una gran cantidad de datos, los que tienen una funcionalidad común en diferentes plataformas y aplicaciones, y la complejidad de los casos de prueba. Etc.

3). Diseño y desarrollo de planificación

Después de determinar el objetivo y qué tipo de prueba automatizar, se debe decidir qué prueba automatizada realizaría. En primer lugar, desarrolle casos de prueba en pruebas lógicas más pequeñas, luego escriba scripts de prueba y desarrolle conjuntos de pruebas, donde se ejecutan uno tras otro de forma automática. Esto se genera creando una prueba en un traje como una biblioteca que tiene múltiples casos de prueba.

4). Ejecución de pruebas

Se utiliza una herramienta de automatización o una herramienta de gestión de pruebas para la ejecución del script de prueba. Después de la ejecución final, se debe realizar un informe detallado de las pruebas individuales. Para que el informe se pueda utilizar como referencia para otras pruebas.

5). Mantenimiento

Los scripts de automatización deben agregarse, revisarse y mantenerse para cada ciclo. Donde el mantenimiento se vuelve necesario. Por ejemplo, después de escribir el código, verificamos el código y si hay algún error ocurre una falla. Por lo tanto, identificamos qué parte del código tiene un error y lo arreglamos, y luego ejecutamos el código desde el principio. Por lo tanto, el mantenimiento juega un papel vital que mejora la necesidad de scripts de automatización.

Enfoques de la automatización

Hay tres enfoques para la automatización, son

1). Enfoque basado en código

Prueba el marco de trabajo, se centra en la ejecución del caso de prueba para averiguar si varias secciones de códigos funcionan según las expectativas en diferentes condiciones o no. Es un método popular utilizado en el desarrollo de software ágil.

2). Interfaz gráfica de usuario (GUI)

Las aplicaciones que tienen GUI se pueden probar usando este método para registrar las acciones y respuestas del usuario cualquier número de veces. Ejemplo: herramienta Selenium utilizada para probar un sitio web. Los casos de prueba se pueden escribir en cualquier lenguaje de programación como java, phyton, C .. etc.

3). Enfoque marco

Es un conjunto de pautas. Donde el marco reúne las bibliotecas de la función, las fuentes de datos de prueba, los detalles del objeto y otros módulos reutilizables. El costo de mantenimiento es menor y altamente eficiente. Ejemplo: si hay algún cambio en el caso de prueba, entonces esa parte del archivo del caso de prueba debe actualizarse sin ningún cambio en el controlador o los scripts de inicio.

Tipos de marcos

Hay diferentes tipos de enfoques marco que son

  • Marco de trabajo de scripting lineal
  • Marco basado en datos
  • Marco basado en palabras clave
  • Marco de prueba modular
  • Marco de prueba híbrido.

Tipos de pruebas de automatización

Los diferentes tipos de pruebas de automatización son

  1. Examen de la unidad
  2. Prueba de humo
  3. Pruebas funcionales
  4. Pruebas de integración
  5. Pruebas de regresión

1). Examen de la unidad

En una aplicación web, puede haber varios componentes / modelos que deben probarse. El proceso de probar todos y cada uno de los modelos es una prueba unitaria. Se realiza durante la fase de desarrollo. Donde los códigos están escritos por desarrolladores y también probadores.

2). Prueba de humo

Las pruebas de humo también se conocen como 'Pruebas de verificación de construcción'. Se usa para verificar si el código está escrito según la expectativa de resultados finales o no. En las pruebas de humo, una vez que se realiza la prueba, su resultado final decidirá si la prueba futura debe continuar o no. Los problemas durante la prueba se pueden identificar en una etapa temprana.

3). Pruebas funcionales

Comprueba la funcionalidad de la web, funcionando en consecuencia o no. Por ejemplo, si consideramos la página de inicio de sesión, donde tenemos que ingresar el ID de usuario y la contraseña. A menos que ingresemos datos correctos, nuestra página esperada no se abre. Si el código está escrito para la página de inicio de sesión y se prueba correctamente, se abre la página esperada, significa que la prueba funcional está funcionando correctamente.

4). Pruebas de integración

En esto, los componentes individuales se integran y prueban a la vez. Donde podemos comprobar si los módulos individuales son compatibles con la comunicación entre sí. Por ejemplo, si consideramos la fabricación de un bolígrafo, donde el bolígrafo consta de un recambio, capuchón, cuerpo., Que se fabrican por separado y se ensamblan entre sí. Durante el montaje comprobamos si están bien colocados o no.

5). Pruebas de regresión

Cuando hay alguna actualización en el código, nos aseguramos de que no afecte a los códigos ya escritos. Por lo tanto, hacemos pruebas de regresión. El uso de las pruebas de regresión consiste en actualizar el código según el requisito, detectar el error y corregirlo. Un ejemplo de prueba de regresión es el sitio web bancario, donde el sitio web se actualiza periódicamente cuando es necesario, como actualizar el saldo de la cuenta corriente. Por lo tanto, al actualizar el sitio web, uno debe asegurarse de que las funciones recién actualizadas no afecten a las funciones ya existentes.

¿Cómo elegir herramientas de automatización?

Para seleccionar una herramienta de automatización adecuada, compruebe las siguientes propiedades que se enumeran a continuación,

  • Apoyo medioambiental
  • Prueba de base de datos
  • Identificación de objeto
  • Prueba de imagen
  • Prueba de recuperación de errores
  • Soporte de múltiples marcos
  • Minimizar el costo
  • Amplios informes de prueba y costos.

Tipos de herramientas de prueba de automatización

Existen muchas herramientas de prueba de automatización, algunas de ellas se enumeran a continuación

1). Selenio

Es de código abierto, que es un método de prueba popular para realizar aplicaciones web, múltiples navegadores y plataformas. La última versión de selenio es Selenium4. El programador requiere conocimientos avanzados de lenguaje de programación. Hay cuatro componentes de selenio, selenio IDE, control remoto de selenio, controlador web, cuadrícula de selenio.

2). agua

Es una herramienta de prueba de código abierto compuesta por una biblioteca ruby ​​que automatiza las pruebas de aplicaciones web. La última versión de watir es watir 6.16. Los códigos se pueden escribir en cualquier idioma. Firefox, chrome, safari son ciertos navegadores compatibles con Watir. Algunas de las características de watir son, toma cortos de pantalla, rendimiento de página y puede descargar cualquier archivo fácilmente.

3). Ranorex

Es una herramienta de prueba de GUI flexible todo en uno. Es adecuado para todos los navegadores y dispositivos del entorno. Es compatible con C # y V.NET. Está incorporado en Microsoft Windows y Windows Server. Los componentes principales de ranorex son registrador de ranorex, repositorio de ranorex, espía de ranorex, editor de código de ranorex y depurador de ranorex.

4). API (prueba de interfaz de programación de aplicaciones)

Es una herramienta de prueba móvil, que es un software de aplicación de código abierto. API encuentra si una prueba de API que se ejecuta da resultados precisos o no. Hay varios tipos de pruebas de API: pruebas unitarias, pruebas funcionales, pruebas de carga, detección de errores en tiempo de ejecución, pruebas de seguridad, pruebas de interfaz de usuario web, pruebas de penetración, pruebas de fuzz. Está implementado en la API POSIX.

Herramientas de prueba de automatización para aplicaciones móviles

Los diversos tipos de herramientas de prueba de automatización para aplicaciones móviles son Appium, Robotium, MonkeyRunner, UI Automator, Selendroid, MonkeyTalk, Testdroid, Calabash, Frank, SeeTest

1). appium

  • Es un código abierto
  • Admite Java, Ruby y otros
  • El código fuente se puede reutilizar
  • Compatible para Android e Ios.

2). robots

  • Es un código abierto
  • Compatible con todas las versiones y subversiones de Android.
  • Los códigos están escritos en Java.

3). Monkeyrunner

  • Las pruebas de nivel funcional o de marco se realizan con monkeyrunner
  • Los códigos están escritos en python
  • Características: controla muchos dispositivos a la vez, la automatización puede ser extensible, las aplicaciones de Android y el hardware se pueden probar, la automatización puede ser extensible.

4). Automatizador de UI

  • Se utiliza para probar interfaces de usuario, utilizando casos de prueba de UI.
  • Admite varias versiones de androides
  • Puede bloquear y desbloquear teléfonos inteligentes.

5). Selendroid

  • Se utiliza para probar la interfaz de usuario de un híbrido basado en Android.
  • Los casos de prueba se escriben con selendroid
  • A protocolo como el cable JSON es muy compatible.

Riesgo involucrado en las pruebas de automatización

El riesgo involucrado en las pruebas de automatización es

  • El costo inicial será alto
  • La automatización nunca es 100%
  • No automatiza la interfaz de usuario no fija
  • Evaluación incorrecta de tiempo y esfuerzo
  • Incompatibilidad de herramientas de automatización.

Ventajas de las pruebas de automatización

Las ventajas de automatización las pruebas son

  • Se simplifica la ejecución de casos de prueba
  • Mejora la confiabilidad de la prueba
  • Reduce el costo de mantenimiento
  • Los resultados de las pruebas se hacen públicos
  • Sin errores humanos
  • Ahorra tiempo y memoria.

Aquí tenemos describe el software pruebas de automatización, su proceso de prueba, tipos de prueba de automatización y herramienta de prueba de automatización. Aquí hay una pregunta, '¿cómo es mejor la prueba de automatización que la prueba manual?'.