La forma tradicional de Linux y Unix para encontrar la cobertura del código es usar gcov para generar el mapa de cobertura y lcov para hacer que la salida sea bonita. La cobertura de código mide si se ejecuta una línea de código y, de ser así, cuántas veces. Esto es útil para medir la eficacia de su código de prueba. En teoría, cuantas más líneas estén "cubiertas", más completas serán sus pruebas. Sin embargo, el vínculo entre la cobertura del código y la integridad de la prueba puede ser tenue.
Datos de Cobertura de Código
Los datos de cobertura de código generalmente vienen en dos partes, cobertura de línea y cobertura de función, las cuales se expresan más fácilmente como porcentajes. Estos números se entienden fácilmente para las pruebas de unidades individuales. Al probar una función individual o un método dentro de un objeto, el número total de funciones y líneas en el archivo cargado sirve como denominador para el cálculo del porcentaje. Por lo tanto, si distribuye sus pruebas en varios archivos para un solo módulo, la cobertura de la prueba unitaria será baja para cada prueba individual. La suma de todos los números de cobertura de cada prueba individual brindará la imagen de cobertura completa para ese archivo.
Si encuentra un error como se muestra a continuación:
lcov: command not found
puede intentar instalar el siguiente paquete según su elección de distribución.
Distribución | Comando |
---|---|
OS X | instalar cerveza lcov |
Debian | apt-get install lcov |
Ubuntu | apt-get install lcov |
Kali Linux | apt-get install lcov |
Fedora | dnf instalar lcov |
Raspbian | apt-get install lcov |
Reflexiones finales
La generación y visualización de información de cobertura de código es crucial para las pruebas unitarias e importante para las pruebas de integración agregada. Si bien los números de cobertura de código no cuentan toda la historia, la información de cobertura de código proporciona un buen número único para seguir el progreso de sus pruebas.