Cobertura de pruebas en pruebas de software

ยฟQuรฉ es la cobertura de prueba?

La cobertura de prueba se define como una mรฉtrica en Pruebas de software que mide la cantidad de pruebas realizadas por un conjunto de pruebas. Incluirรก la recopilaciรณn de informaciรณn sobre quรฉ partes de un programa se ejecutan al ejecutar el conjunto de pruebas para determinar quรฉ ramas de declaraciones condicionales se han tomado.

En tรฉrminos simples, es una tรฉcnica para garantizar que sus pruebas prueben su cรณdigo o quรฉ parte de su cรณdigo ejerciรณ al ejecutar la prueba.

ยฟQuรฉ hace la cobertura de prueba?

  • Encontrar el รกrea de un requisito no implementado por un conjunto de casos de prueba
  • Ayuda a crear casos de prueba adicionales para aumentar la cobertura.
  • Identificar una medida cuantitativa de la cobertura de la prueba, que es un mรฉtodo indirecto para el control de calidad.
  • Identificar casos de prueba sin sentido que no aumentan la cobertura

ยฟCรณmo se puede lograr la cobertura de la prueba?

  • La cobertura de la prueba se puede realizar ejercitando tรฉcnicas de revisiรณn estรกtica, como revisiones por pares, inspecciones y recorridos.
  • Transformando los defectos ad-hoc en casos de prueba ejecutables
  • A nivel de cรณdigo o de prueba unitaria, la cobertura de la prueba se puede lograr aprovechando la cobertura de cรณdigo automatizada o las herramientas de cobertura de prueba unitaria.
  • La cobertura de pruebas funcionales se puede realizar con la ayuda de herramientas de gestiรณn de pruebas adecuadas.

Beneficios de la cobertura de pruebas en ingenierรญa de software

  • Puede asegurar la calidad de la prueba.
  • Puede ayudar a identificar quรฉ partes del cรณdigo se modificaron realmente para el lanzamiento o la correcciรณn.
  • Puede ayudar a determinar las rutas en su aplicaciรณn que no fueron probadas.
  • Prevenir Defecto fuga
  • El tiempo, el alcance y el coste se pueden mantener bajo control
  • Prevenciรณn de defectos en una etapa temprana del ciclo de vida del proyecto
  • Puede determinar todos los puntos de decisiรณn y rutas utilizados en la aplicaciรณn, lo que le permite aumentar la cobertura de la prueba.
  • Las lagunas en los requisitos, casos de prueba y defectos a nivel de unidad y de cรณdigo se pueden encontrar de forma sencilla

ยฟCuรกles son las principales diferencias entre la cobertura de cรณdigo y la cobertura de prueba?

Cobertura de cรณdigo y la cobertura de prueba son tรฉcnicas de mediciรณn que le permiten evaluar la calidad del cรณdigo de su aplicaciรณn.

A continuaciรณn, se muestran algunas diferencias fundamentales entre las cabinas de estos mรฉtodos de cobertura:

Parรกmetros Cobertura de cรณdigo Cobertura de prueba
Definiciรณn Tรฉrmino de cobertura de cรณdigo que se utiliza cuando el cรณdigo de la aplicaciรณn se ejecuta cuando se ejecuta una aplicaciรณn. Cobertura de prueba significa plan de prueba general.
Objetivo Las mรฉtricas de cobertura de cรณdigo pueden ayudar al equipo a monitorear sus pruebas automatizadas. La cobertura de la prueba proporciona detalles sobre el nivel en el que se ha probado la codificaciรณn escrita de una aplicaciรณn.
Subtipos Cobertura de cรณdigo dividida con subtipos como cobertura de estado de cuenta, cobertura de condiciรณn, cobertura de sucursal, cobertura de Toogle, cobertura de FSM. Ningรบn subtipo de mรฉtodo de cobertura de prueba.

Fรณrmula de cobertura de prueba

Para calcular la cobertura de la prueba, debe seguir los pasos que se indican a continuaciรณn:

Paso 1) El total de lรญneas de cรณdigo en la calidad del software que estรก las pruebas

Paso 2) El nรบmero de lรญneas de cรณdigo que ejecutan actualmente todos los casos de prueba.

Ahora, necesita encontrar (X dividido por Y) multiplicado por 100. El resultado de este cรกlculo es el porcentaje de cobertura de su prueba.

Por ejemplo:

Si el nรบmero de lรญneas de cรณdigo en un componente del sistema es 500 y el nรบmero de lรญneas ejecutadas en todos los casos de prueba existentes es 50, entonces la cobertura de la prueba es:

(50 / 500) * 100 = 10%

Ejemplos de cobertura de pruebas

Ejemplo 1:

Por ejemplo, si "cuchillo" es un artรญculo que desea probar. Luego debes concentrarte en comprobar si corta las verduras o frutas con precisiรณn o no. Sin embargo, hay otros aspectos a tener en cuenta como que el usuario deberรญa poder manejarlo cรณmodamente.

Ejemplo 2:

Por ejemplo, si desea consultar la aplicaciรณn del Bloc de notas. Entonces es imprescindible comprobar sus caracterรญsticas esenciales. Sin embargo, es necesario cubrir otros aspectos, como que la aplicaciรณn del Bloc de notas responde de manera esperada mientras usa otras aplicaciones, el usuario comprende el uso de la aplicaciรณn, no falla cuando el usuario intenta hacer algo inusual, etc.

Desventajas de la cobertura de la prueba:

  • La mayorรญa de las tareas cubiertas por la prueba son manuales ya que no existen herramientas para automatizar. Por lo tanto, se necesita mucho esfuerzo para analizar los requisitos y crear casos de prueba.
  • La cobertura de prueba le permite contar caracterรญsticas y luego compararlas con varias pruebas. Sin embargo, siempre hay espacio para errores de juicio.

Resumir este post con: