Blog

Introducción a SonaQube

Escrito por Miguel E. Guerra Connor

abril 15, 2023

SonarQube™ es la herramienta de código abierto líder para inspeccionar continuamente la Calidad y la Seguridad de tu código, al mismo tiempo que potencia a los equipos de desarrollo. Analiza más de 25 lenguajes de programación populares, incluyendo Java, C#, VB.Net, JavaScript, TypeScript y C++. En resumen SonarQube™ es la plataforma por excelencia para análisis estático del código fuente.

SonarQube se integra a las fases de construcción y empaquetado del flujo de trabajo existente y te ayuda a detectar problemas en tu código para facilitar las inspecciones continuas de tus proyectos.

Consulta la siguiente documentación para instalación del servidor de SonarQube : https://docs.sonarqube.org/latest/setup-and-upgrade/install-the-server/

¿Qué es SonarScaner?

SonarScanner es una herramienta de línea de comando que se utiliza para analizar el código fuente y enviar los resultados del análisis a SonarQube. En resumen es utilizada como Herramienta para análisis de código en un proyecto local.

Para C#, SonarScanner para .NET es la forma recomendada de lanzar un análisis para proyectos construidos con MSBuild o dotnet. Es el resultado de una colaboración entre SonarSource y Microsoft.

Para Java, se recomienda SonarScanner para Maven como el escáner predeterminado para tu proyecto. Y si utilizas Gradle existe la opción de SonarScanner para Gradle que es una forma fácil de iniciar el escaneo y SonarScanner para Ant proporciona una tarea que permite la integración del análisis para proyectos con Apache Ant.

También existes escaneres para Azure DevOps y Jenkins. Y para referencia de otros lenguajes puede consultar este link.

Conceptos claves de SonarQube

Dentro de SonarQube existen los Quality Profiles y Quality Gates que son herramientas críticas que permiten a los equipos de desarrollo asegurarse de que su código cumpla con los estándares de calidad y seguridad deseados antes de que el producto sea lanzado al mercado o a producción.

¿Qué es Quality Profile?

Un Quality Profile es un conjunto personalizado de reglas de análisis que se utilizan para evaluar la calidad del código en un proyecto específico. Estas reglas se dividen en diferentes categorías como bugs, seguridad, estilo de código y complejidad, y los desarrolladores pueden habilitar o deshabilitar reglas individuales para adaptarlas a las necesidades específicas de su proyecto.

¿Qué es Quality Gate?

Un Quality Gate en SonarQube es un conjunto de reglas y criterios que se utilizan para medir la calidad del código y asegurar que se cumplan los objetivos establecidos para publicar. Los desarrolladores pueden crear varios Quality Gates y adaptarlos a las necesidades específicas de su proyecto, estableciendo condiciones diferentes para cada uno de ellos.

¿Necesitas orientación sobre este tema?

Esperamos que este artículo te haya ofrecido una perspectiva valiosa sobre el tema. Sin embargo, entendemos que en ocasiones podrías requerir mayor orientación. Si es así, no dudes en contactarnos.
Nuestro equipo de expertos están listos para asistirte en tus proyectos y desafíos tecnológicos.