how select correct test cases
Ahora es la era de la automatización de pruebas . La mayoría de los proyectos de prueba intentan convertir sus casos de prueba manuales en automatizados para mejorar la productividad y la cobertura.
Uno de los pasos clave para comenzar las pruebas de automatización es: seleccionar los casos de prueba adecuados y determinar el ROI (retorno de la inversión).
¿Qué esperar de este artículo?
En este artículo, he tratado de citar algunos puntos importantes basados en mi experiencia para ayudarlo a seleccionar el candidato correcto para automatización y determinar varios otros factores que producirán mejores resultados y beneficios de las pruebas.
¿Por qué realizar pruebas automatizadas?
La automatización no domina ni reemplaza la prueba manual, pero la complementa. Al igual que Manual, la automatización necesita una estrategia con una planificación, seguimiento y control adecuados. La automatización, cuando se implementa correctamente, puede convertirse en un activo para el equipo, el proyecto y, en última instancia, para la organización.
Hay muchas ventajas de la automatización; aquí hay algunos importantes para mencionar:
- Útil para ejecutar tareas rutinarias como Pruebas de humo y Pruebas de regresión .
- Útil para preparar el Datos de prueba .
- Ayuda a ejecutar el Casos de prueba que involucran lógica empresarial compleja .
- Es bueno ejecutar los casos de prueba multiplataforma (como diferentes sistemas operativos, navegadores, etc.)
- Genial para ejecutar los casos de prueba que son un poco difíciles de ejecutar manualmente.
- Cuando no se conoce el número de iteraciones de las ejecuciones del caso de prueba.
Muchas veces, las partes interesadas sienten que la automatización de pruebas actúa como una herramienta de apoyo para las pruebas manuales, por lo que es vital comprender que la automatización es la mejor manera de aumentar la efectividad, la eficiencia y la cobertura de las pruebas. No solo ahorra tiempo, sino que también mejora la precisión, ya que las tareas repetitivas a través del enfoque manual pueden ser propensas a errores humanos y pueden llevar mucho tiempo.
Candidatos a la automatización
Error básico a evitar:
Uno de los errores más básicos que cometen los probadores es NO seleccionar los casos de prueba correctos para la automatización.
No se limite a seleccionar cualquier conjunto de pruebas. Analice los casos de prueba a fondo y seleccione los candidatos para la automatización teniendo en cuenta el factor más importante, es decir, el ROI. Primero, debemos comprender y descubrir las formas de obtener un ROI más alto y positivo.
método java que toma una matriz
( ROI - Retorno de la inversión - Es un cálculo de beneficios en términos de ahorro de costos, mayor eficiencia y calidad)
No existe un procedimiento estándar para determinar los casos de prueba correctos para la automatización. Todo depende de la aplicación que esté probando.
Según mi experiencia, he intentado anotar algunos pasos que pueden proporcionar una idea para seleccionar los casos de prueba y, en última instancia, avanzar para lograr un ROI positivo para la automatización.
Ver también => ¿Cómo traducir casos de prueba manuales en scripts de automatización?
Lo que vas a aprender:
Cómo seleccionar casos de prueba correctos para pruebas de automatización
Paso 1:
Identifique los parámetros en los que basará su caso de prueba como candidato para la automatización.
A partir de ahora, estoy identificando los siguientes parámetros, puede tener sus propios parámetros dependiendo de su aplicación.
- Caso de prueba ejecutado con diferentes conjuntos de datos.
- Caso de prueba ejecutado con diferentes navegadores.
- Caso de prueba ejecutado con diferentes entornos.
- Caso de prueba ejecutado con lógica empresarial compleja
- Caso de prueba ejecutado con un conjunto diferente de usuarios
- El caso de prueba involucra una gran cantidad de datos
- El caso de prueba tiene alguna dependencia
- El caso de prueba requiere datos especiales
Paso 2:
Divida cada aplicación en módulos. Para cada módulo, analice e intente identificar los casos de prueba que deben automatizarse en función de los parámetros. Esta lista variará de un proyecto a otro y también se puede mejorar para satisfacer sus necesidades:
Figura 1.0
Y – Yes
N - No
De manera similar, para todos los módulos, esta lista se puede utilizar para identificar los casos de prueba candidatos de automatización.
Paso 3 :
Consolide y agrupe la cantidad de casos de prueba para cada módulo que se muestra a continuación
Figura 2.0
La figura 2.0 es bastante sencilla y se explica por sí misma. Aquí estoy tratando de cuantificar los detalles y dar una estimación para terminar la prueba manualmente.
Paso 4:
Una vez que haya identificado todos los detalles del nivel granular, puede presentarlos de la siguiente manera. Ahora estamos avanzando para calcular el ROI.
Figura 3.0:
También debemos tener en cuenta lo siguiente atributos que forman la base para disuadir el ROI :
- Costo de compra y licencia de la herramienta
- Es hora de desarrollar los guiones
- Es hora de mantener los guiones.
- Es hora de analizar los resultados de forma manual y automática.
- Tiempo y costo para capacitar a los recursos.
- Gastos generales de gestión
Ejemplo de cálculo de ROI de automatización de pruebas
En la mayoría de los casos, el ROI se calcula durante 5 años, pero no es obligatorio. Basándome en los factores anteriores, permítanme tratar de desarrollar el cálculo del ROI durante 5 años. Como de costumbre, siempre puede adaptarlo y mejorarlo.
* ROI = (Ahorro acumulado / Inversión mediante automatización) * 100
Pruebas de manual a automatización: ¿Cuáles son los desafíos del proceso?
He tratado de citar los puntos, que creo que son un gran desafío, cuando intentamos automatizar un conjunto de pruebas.
# 1) Necesidad de automatización: Cada equipo de prueba es único y tiene una necesidad exclusiva de automatización. No podemos desarrollar un estándar fijo, pero podemos diseñar un estándar que se adapte a nuestras necesidades. Por este motivo, la automatización requiere un buen apoyo tanto de la dirección como del equipo de desarrollo.
# 2) Automatización de la aplicación completa: Automatizar una aplicación al 100% es una gran tarea. No es que sea imposible, pero requiere una planificación y un seguimiento adecuados y, por supuesto; a veces. Hay muchas permutaciones y combinaciones de datos, n cantidad de entornos con n cantidad de atributos de autenticación y autorización que necesitan ser validados y por lo tanto requieren una estrategia para automatizar.
# 3) Mentalidad manual versus automatización: “ Normalmente automatizamos lo que es importante y repetitivo, pero preferimos probar la funcionalidad importante manualmente ”. ¿Confundido? ¡¡Incluso yo soy !! Pero esto es un hecho. Deberíamos tener criterios que decidan cuáles son los importante Casos de prueba. Estos criterios pueden basarse en múltiples factores como lógica empresarial compleja, áreas que son de mayor interés para los clientes, áreas propensas al riesgo, etc.
# 4) Decidir sobre el marco: Diseñando el marco es la faceta más importante de la automatización. Creo que deberíamos dedicar relativamente más tiempo a desarrollar el marco que al guión. Siempre que desarrollamos el plan de automatización, el diseño del marco debe ser el enfoque principal.
PLANEA para diseñar el marco. Identifique y haga una lista de verificación de los elementos que formarán el marco. Si el marco es sólido como una roca, la creación de scripts y el mantenimiento se vuelven fáciles.
# 5) Conocimiento del equipo: Siempre que pensamos en la automatización, inmediatamente saltamos a aprender el lenguaje de programación o el lenguaje de scripting. Aprender este idioma definitivamente ayudará, pero se debe hacer más énfasis en construir y desarrollar la lógica.
La automatización no debería ser responsabilidad de un puñado de recursos, sino que todo un equipo debería contribuir a ella. Esto ayudará no solo a mejorar las habilidades de los recursos sino también mantenerlos motivados .
# 6) Informes: Cada herramienta tiene un estándar para informar los resultados de las pruebas. Para personalizarlo; es una tarea desafiante. Informar los resultados de las pruebas también requiere coordinación y mantenimiento, lo que aumenta el costo.
# 7) Confianza: Debemos confiar en nuestro material de automatización. Invertimos horas de trabajo para construir una suite de automatización, pero aún así, no creemos en los resultados de las pruebas. Se deben realizar esfuerzos para mantener los guiones. Además, deberíamos ver que el equipo que está haciendo las pruebas manuales de la aplicación, debería estar involucrado para automatizarlo ya que conocen su aplicación.
La mayoría de las veces, un tercer equipo realiza la automatización, por lo que el equipo de prueba real no está al tanto de los scripts y finalmente termina ejecutando las pruebas manualmente porque sienten que el seguimiento de los scripts se suma a sus tareas.
Ver también=> Desafíos de las pruebas manuales y de automatización.
Conclusión
En la mayoría de los casos, preferimos Automatizar la suite de regresión ( aquí hay algunos desafíos en la automatización de la suite de regresión en un entorno ágil ) ya que contiene una mayor cantidad de casos de prueba. En ese caso, podemos dividir los trajes de regresión en trajes más pequeños y decidir ejecutar el paquete apropiado según el requisito de lanzamiento.
Suponga que un conjunto de regresión contiene 1500 casos de prueba, puede dividirlo en 3 trajes de 500 casos de prueba por traje y automatizarlo.
¿Cuál es la mejor aplicación espía para teléfonos celulares?
En lugar de automatizar toda la suite, puede optar por la automatización por fases . En otras palabras, puede seguir el modelo de prototipo para desarrollar la suite de automatización. Cree una estructura o marco con la implementación de un menor número de casos de prueba y comience a usar eso y mejorarlo gradualmente agregando más casos de prueba.
Deberíamos seguir el Rueda Deming (ciclo PDCA) también para la automatización. Siendo una actividad continua, Se debe hacer hincapié en la construcción adecuada del marco. lo que resultará en facilidad de mantenimiento e implementación de nuevas características.
Requiere el apoyo adecuado del equipo de desarrollo y también de la administración. Debemos alentar al equipo de pruebas a que contribuya más a las pruebas de automatización, ya que conocen su producto más que nadie.
Sobre el Autor: Este es un artículo invitado de Shilpa Chatterjee Roy. Trabaja en el campo de las pruebas de software durante los últimos 8,5 años en varios dominios.
Espero que hayamos simplificado esto'Pruebas de manual a automatización'proceso. No dude en compartir su experiencia y pensamientos sobre cómo superar los desafíos del proceso.
PREV Tutorial | SIGUIENTE Tutorial
Lectura recomendada
- ¿Cómo traducir casos de prueba manuales en scripts de automatización? - Una guía paso a paso con ejemplo
- Desafíos de las pruebas manuales y de automatización
- ¿Qué son las pruebas de automatización? (Guía definitiva para iniciar la automatización de pruebas)
- Proceso de prueba de automatización de 10 pasos: cómo iniciar las pruebas de automatización en su organización
- Los 25 mejores marcos y herramientas de prueba de Java para pruebas de automatización (Parte 3)
- 20+ mejores herramientas de prueba de automatización de código abierto en 2021
- Las 10 mejores prácticas y estrategias de automatización de pruebas
- ¿Cuándo optar por las pruebas de automatización?