Page tree

 

Ya soy un experto y estoy aquí para ayudar: ¡contesta preguntas pendientes y gana puntos!

Skip to end of metadata
Go to start of metadata

 

El visor de componentes es el núcleo de SonarQube: muestra el código fuente de un archivo (tanto archivos de código como de test), y toda su información relevante:

  • El número total de medidas, como líneas de código, complejidad, número de métodos, ...etc.
  • Evidencias (generadas por las reglas activas en el perfil de calidad) y su deuda técnica asociada.
  • Bloques duplicados en el mismo o en otros ficheros, para el mismo proyecto o en otros proyectos (si la detección cruzada de duplicados en módulos y en proyectos  está activada).
  • Lineas y ramas cubiertas por pruebas unitarias o de integración.
  • Información SCM (si el plugin SCM Activity  está instalado)  como quién fue el último que hizo commit de una linea específica y cuándo.
  • Las pruebas de un determinado fichero de prueba, junto con su tiempo de ejecución y su estado.

 

Accederá al visor de componentes siempre que:

Descripción General

Diseño

El visor de componentes está compuesto por tres partes:

  • La cabecera está situada sobre el fichero. Muestra información útil y proporciona acciones de decorado y filtrado. 
  • El Espacio de Trabajo situado a la parte izquierda del fichero, se utiliza para realizar un seguimiento de la navegación entre ficheros.
  • El código fuente situado en el centro, decorado con información adicional basada con las opciones elegidas en la cabecera..

Cabecera

La cabecera puede contener hasta 5 pestañas, una por cada eje principal: Pestaña general de medidasde deuda técnica y evidenciasde cobertura (para ficheros de código), de tests (para ficheros de prueba), de duplicadosde información de SCM. Aquellas pestañas que no son relevantes para el fichero actual no serán mostradas. Por ejemplo, si el proyecto no tiene pruebas, la pestaña de cobertura se omitirá. Del mismo modo, la pestaña de duplicados también será omitida si no existen duplicados y la pestaña SCM no aparecerá si el plugin no está instalado.

Se puede pulsar en cada pestaña para mostrar las métricas detalladas en una sección a la parte inferior de las pestañas. Pulsar sobre la misma pestaña de nuevo para ocultar o mostrar la sección de métricas.

Cada pestaña está formada por dos partes: una linea azul delgada en la parte superior, que controla el decorado, y la propia pestaña, que controla el filtrado.

Expandir una pestaña no activa el filtro o el decorado

Pulsar en una pestaña no afecta al código que se está mostrando. Simplemente muestra información detallada sobre dicho código. Se tiene que pulsar explícitamente en un filtro o en la barra de decorado para cambiar algo en el código fuente.

Decorado

En la parte superior de cada pestaña (excepto la primera), se puede marcar o desmarcar una barra azul para activar el decorado del código fuente con información relevante asociada a la pestaña.

  • La acción de decorado modifica la información que se muestra en el código fuente. Por ejemplo, se puede pulsar sobre la barra azul de la parte superior de la pestaña SCM para mostrar las anotaciones SCM de los ficheros.
  • Se pueden activar múltiples decorados al mismo tiempo.
  • Cuando se activa un decorado (la barra azul se oscurece) se puede necesitar desplazarse hacia abajo para pode encontrar una aparición de dicho decorado. Por ejemplo, si se activa el decorado de duplicados, el fichero que se está inspeccionando puede no tener bloques duplicados en el principio del fichero, entonces se debe desplazar hacia abajo para poder encontrar uno.

Filtrado

Cuando se expande una pestaña, se accede a las acciones de filtrado:

  • Las acciones de filtrado modifican la parte del código fuente que es visible.
  • Se pueden activar pulsando en cualquier métrica de la pestaña que tenga un cuadrado gris al lado . Por ejemplo, en pestaña de evidencias y deuda técnica, se puede pulsar sobre infopara mostrar únicamente el código con evidencias de severidad info (y unas pocas lineas de contexto contiguas a las evidencias)

Unicamente se puede activar un filtro de todas las pestañas al mismo tiempo

Esto significa que si se activa el filtro "Evidencias sin resolver" de la pestaña de Evidencias y se expande la pestaña de Cobertura, nada cambiará en el código a menos que se seleccione uno de los filtros de la pestaña de Cobertura.

 

El decoración y el filtrado funcionan de forma independiente. Por ejemplo, es posible filtrar el código para ver solo aquellas partes que tienen evidencias informativas, mientras que en estas misma lineas se muestra información de la cobertura, tal y como se puede ver en el siguiente ejemplo:

Si se pulsa sobre uno de los filtros disponibles en las pestañas de Evidencias, Cobertura o Duplicados, el visor de componentes activará automáticamente el decorado apropiado si este no está activo.

El espacio de trabajo

El espacio de trabajo mantiene información de seguimiento del historial de navegación cuando se usan las características del visor de componente para navegar entre ficheros. Sirve de ayuda para:

  • recordar que ficheros se han visitado
  • volver a uno de estos archivos

Se va rellenando a medida que se inicia la navegación utilizando tanto los bloques duplicados como la cobertura por test.

Tener en cuenta que el espacio de trabajo se limpia automáticamente cuando se para de navegar con estas dos características.

El código fuente

La principal finalidad del visor de componentes es mostrar el código fuente:

El remarcado de uso y la declaración de variables y métodos está disponible solo para Java

Esta característica esta disponible únicamente para código Java, y su ámbito está limitado al fichero actual. Permite responder a las cuestiones:

  • ¿Donde se declaró una variable o un método?
  • ¿Donde se utiliza?

Eventualmente, esta herramienta puede estar disponible para otros lenguajes y para identificadores declarados fuera del fichero actual.

¿Quieres saber más?

Para aprender mas sobre las posibilidades de decorado y filtrado de las pestañas de la cabecera, léase

  • No labels