Nota:
GitHub Code Quality está actualmente en versión preliminar pública y sujeto a cambios. Durante versión preliminar pública, Code Quality no se facturará, aunque los escaneos de Code Quality consumirán minutos de GitHub Actions.
En este artículo se proporcionan definiciones para las métricas y clasificaciones usadas por Code Quality.
Puede ver los resultados basados en reglas para su repositorio en la pestaña Security and quality, debajo de la pestaña Conclusiones estándar " Calidad del código".
Definiciones de métricas
En la tabla siguiente se proporcionan definiciones para cada métrica que se notifica para tu repositorio.
| Métrica | Definición | Resultados de ejemplo |
|---|---|---|
| Reliability | Evalúe si el código realiza su función prevista correctamente, de forma predecible y coherente. El código confiable está libre de errores, controla los errores de forma segura y funciona según lo previsto en condiciones normales y de casos perimetrales. | Problemas con el rendimiento, simultaneidad, control de errores, corrección, diseño de API, accesibilidad, internacionalización o seguridad |
| Mantenimiento | Evalúe lo fácil que es comprender, modificar y ampliar el código a lo largo del tiempo. El código que se puede mantener sigue los procedimientos recomendados, evita la complejidad innecesaria y se organiza para facilitar los cambios futuros y la colaboración. | No usar procedimientos recomendados, código no usado o inactivo, código duplicado, complejidad, redundancia lógica, documentación inadecuada, problemas de dependencia |
Niveles de gravedad
Los niveles de gravedad se usan para indicar el impacto potencial o la urgencia de un hallazgo de calidad de código. Ayudan a los usuarios a priorizar los esfuerzos de corrección y a comunicar riesgos a las partes interesadas. La gravedad viene determinada por la regla que detectó el problema, siguiendo las convenciones de CodeQL y los estándares del sector.
| Severity | Definición |
|---|---|
| Error | Indica un problema de alta gravedad que es probable que cause errores, errores o riesgos de mantenimiento importantes. |
| Advertencia | Indica un problema de gravedad moderada que puede afectar a la calidad o confiabilidad del código, pero no es inmediatamente crítico. |
| Nota | Indica un problema de gravedad baja, una mejora menor o una recomendación. Estos hallazgos son útiles para la salud y el mantenimiento continuos del código. |
Definiciones de clasificaciones
Estas clasificaciones se usan para resumir la confiabilidad general y la capacidad de mantenimiento de un repositorio en función de la gravedad de los resultados basados en reglas encontrados por CodeQL exámenes de la rama predeterminada completa:
| Rating | Definición | Criterios (basados en las conclusiones) |
|---|---|---|
| Excelente | Codebase muestra los procedimientos recomendados para la confiabilidad y el mantenimiento. | No se detectaron resultados de calidad del código |
| Bien | El código base tiene problemas de gravedad baja o se sugieren mejoras menores. | ≥1 Hallazgo de nivel "Nota" ≥1 |
| Bueno: | Codebase tiene problemas de gravedad moderada que pueden afectar a la calidad, pero no son críticos. | ≥1 hallazgo de nivel "Advertencia" |
| Necesita mejora | El código base tiene problemas de alta gravedad, incluidos errores o riesgos de mantenimiento importantes. | ≥1 Hallazgo de nivel "Error" |
Cobertura de código
La cobertura de código mide qué porcentaje del código fuente se ejecuta cuando se ejecuta el conjunto de pruebas. Code Quality muestra un porcentaje de cobertura en las solicitudes de extracción una vez que cargas un informe Cobertura XML.
Cómo se calcula la cobertura
El porcentaje de cobertura representa el número de líneas cubiertas por pruebas divididas por el número total de líneas, expresadas como un porcentaje. Code Quality almacena la última carga de cada rama (incluida la rama por defecto) y compara la cobertura de la rama de la PR con la cobertura de la rama por defecto.
Por ejemplo, si la rama por defecto tiene un 44 % de cobertura y la rama de la PR tiene un 65 % de cobertura, la PR ganó 21 puntos porcentuales de cobertura.
Delta por archivo
El desglose por archivo de las solicitudes de incorporación de cambios muestra cómo cambió la cobertura de cada archivo modificado. Un delta positivo significa que el archivo ganó cobertura en la rama de la PR en comparación con la rama predeterminada.
Para configurar la cobertura de código para el repositorio, consulte Setting up code coverage for your repository.