Coverage report
Clase 14 de 27 • Curso de Introducción al Testing con JavaScript
Contenido del curso
Clase 14 de 27 • Curso de Introducción al Testing con JavaScript
Contenido del curso
Carlos S. Aldazosa
Rubén Ernesto Aragón Gil
Miguel Angel Reyes Moreno
Edgar Mauricio Pérez Rojas
Keirys Polanco Crespo
Oscar Guzman
Rubens Gomez
Jorge Iván Otero Vargas
Rubens Gomez
Rodrigo Andrés Moreno Pertúz
jefred bedoya
Daniel Andres Rojas Paredes
Jose Bernabe Rios Nuñez
Jose Bernabe Rios Nuñez
Alvaro Eduardo Garzón Pira
Miguel Angel Reyes Moreno
Rubén Ernesto Aragón Gil
Este es un punto importante, por que como dice Nicolas "el porcentaje de cobertura sirve para tener un equilibrio y no hacer pruebas innecesarias". Esto esta muy ligado a hacer "sobre ingeniería", no porque se pueda hacer significa que se tenga que hacer y creo que ese es uno de los puntos que caracteriza a un buen Software Developer.
Gracias por la recuperación que comentas.
Gracias, me llevo esto a mis apuntes :D
Resumen
Reporte de Cobertura
Es una medida porcentual que indica cuanto falta probar del código que va a ir a producción, cuál ya está probado, cuál no se usa. ISO y la FAA exigen 100% de cobertura, pero en la realidad no es tan así, por ejemplo hacer test a setter y getters puede llegar a ser innecesario, este 100% no garantiza que aparezcan errores ni que sean el mejor set de pruebas.
~/.../testing-js/demos master ● npm run test -- --coverage
Muestra el reporte de cobertura, pero también se puede abrir el html:
/home/user/Documents/testing-js/demos/coverage/lcov-report/index.html
con la extension de VScode : Live Server para lanzarlo en el navegador por defecto.
Reporte de cubertura: no quiere decir que todo este 100% probado. p
Supongo que quieres saber si cobertura hace referencia a que hay pruebas por archivo, y no exactamente, el reporte de Jest te verifica también si el código que tiene un archivo de pruebas tiene una prueba para todos los flujos posibles del código y te calcula el porcentaje
como ve lo de google chrome navegador el reporte?
Presionas F12 para ver la consola de desarrollo, presionas los 3 botones > more tools > Coverage
reposte cobertura me gusto
Por practicar escribi una clase Tester para hacer test para practicar OOP, pero Jest es una gran herramienta, me gustó demasiado el coverage y como muestra los reportes
El reporte de cobertura es la brújula del desarrollador. No es solo un número; es la validación de que tu lógica está siendo ejercitada, no solo escrita.
El propósito del reporte
Métricas clave
if/else?La trampa del 100%
Perseguir el 100% es una vanidad técnica. La cobertura alta no garantiza código libre de errores, solo garantiza que el código fue tocado. Enfócate en cubrir la lógica de negocio crítica, no los getters y setters triviales.
entonces recordando de la clase anterior, que con unidad se refiere a aquel fragmento de codigo que tiene una unica responsabilidad, y que estas pruebas unitarias pueden ser de caja negra ( unica responsabilidad inporta mas el output que el como) o de caja blanca (unica responsabilidad pero llamando otros metodos dentro de ella, el how to y el resultado son igual de importantes), llegamos a el coverage. el cual para testing no debe ser mayor a un 80 o 90% puesto que un 100% coverage no significa un codigo a prueba de errores, asi que el esfuerzo para completar ese ultimo 20% no suele ser proporcional al resultado. Lo de pruebas de comportamiento y pruebas de estado no me quedo claro, ¿ alguien me lo puede clarificar?
No me genera el reporte de cobertura al utilizar
npm run test -- --coverage
Estoy utilizando Powershell, ¿Por qué ocurre esto? ¿Cómo lo soluciono?
Lo solucione utilizando:
npm test '--' --coverage
Hola Jose,
Te recomendaría hacer uso de bash como terminal, WSL o Cmder para evitar esos pequeños errores por falta de unas comillas ✌️
Esta ha sido mi clase favorita :star:
Coverage report
Para ejecutar el reporte: npm run test -- --coverage y el archivo index.html nos dará más detalles.
Un informe de cubrimiento de código es una herramienta utilizada para medir qué porcentaje de su código ha sido ejecutado durante las pruebas unitarias. Los informes de cubrimiento de código proporcionan una visión detallada de qué líneas de código se han ejecutado y cuáles no, lo que permite identificar áreas del código que necesitan más pruebas o que podrían ser más propensas a errores. Algunos ejemplos de herramientas de generación de informes de cubrimiento de código en JavaScript son Istanbul, Jest, y nyc.