Generalidades

Pruebas de escritura para todas las ramas perdidas | Autor: Nikit Bhandari | Octubre de 2021

Nicky Bandari
1*kb9BKGChsgqCTalAtdB8pA

La cobertura de sucursales a menudo se pasa por alto al escribir pruebas, pero si comprende todas las rutas que puede tomar el código, lo ayudará a comprender todos los casos extremos. En esta publicación de blog, aprenderá a identificar las ramas que faltan y a escribir mejores pruebas para su código.

Empecemos por lo básico.

¿Qué es la cobertura de sucursales?

La cobertura de sucursales es un indicador que indica si se han probado todas las sucursales de la base de código. «Rama» es una de las posibles rutas de ejecución que el código puede tomar después de la declaración de decisión, por ejemplo, si Se evalúa la declaración.

Fuente: https://linearb.io/blog/what-is-branch-coverage/

Comencemos con un ejemplo simple, tenemos un Estado de salud

Si decidimos escribir la siguiente prueba para nuestro método

Este método tendrá una cobertura de código del 100% porque todas las líneas de este método se ejecutan cuando se ejecuta la prueba, pero falta una rama y no hemos agregado la prueba. Si agrega otra prueba similar a la siguiente, podrá cubrir todas las ramas.

Ahora las cosas se ponen más interesantes cuando Las condiciones se vuelven un poco complicadas

Podría pensar que si agrega dos pruebas como las siguientes, se cubrirán todas las ramas

Pero si lees la imagen de portada de este blog, notarás que en realidad hay 4 sucursales.

Puede escribir las siguientes pruebas para que su código logre una cobertura de sucursales del 100%

Ahora veamos otro ejemplo

En este ejemplo, usamos el operador de llamada segura ().Si escribimos una prueba para comprobar , Echaremos de menos la rama que puede ser Entonces, siempre que usemos el operador de llamada segura, debemos recordar que crea dos ramas, y ambas deben probarse.Ahora que lo sabemos, nuestro caso de prueba se verá así

Incluso si sus pruebas han cubierto todas las ramas, siempre puede agregar más pruebas para su propia comprensión. En esta publicación de blog, solo destaqué las ramas que faltan, pero puedes escribir más pruebas. Espero que ahora tenga una mejor comprensión de todas las rutas / ramas en las que se puede ejecutar su código, y tendrá en cuenta estos casos extremos al escribir pruebas unitarias.

Si tiene algún comentario, no dude en enviarme un tweet / mensaje Gorjeo.

LEER  Nest Update hará que la casa inteligente de Google sea más importante

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba