Operación del pipeline: análisis de código
Escrito para la antigua interfaz de usuario
Este artículo fue escrito para la antigua interfaz de usuario. Las instrucciones todavía se pueden usar, pero las capturas de pantalla están desactualizadas. En algunos casos, los elementos mencionados en las instrucciones se han movido o cambiado. Si no puede encontrar un elemento, consulte el ¿Dónde quedó? artículo.
Resumen
La Escaneo de código La operación analiza los metadatos de Salesforce para identificar problemas de calidad de código antes de la implementación. Mediante análisis estático de código, informa de infracciones de reglas en las clases Apex, los triggers y otros componentes de una rama para confirmar que cumplen tus estándares de codificación definidos. El conjunto de reglas de Code Scan abarca:
Estilo de codificación y mejores prácticas: Mejora la legibilidad, el mantenimiento y la coherencia en toda tu base de código.
Mejores prácticas de seguridad: Identifica vulnerabilidades comunes y patrones de riesgo en tu código.
Sugerencias de rendimiento: Resalta la lógica ineficiente antes de que afecte a los usuarios finales.
Puedes establecer un umbral de severidad para abortar la canalización cuando las infracciones alcancen o superen un nivel especificado. Ejecutar Code Scans en tu canalización ayuda a mantener una calidad de código coherente y te permite implementar componentes fiables, seguros y receptivos.
Este artículo explica cómo configurar y usar la operación de escaneo de código. Consulta las siguientes secciones para obtener más información:
Buenas prácticas
Ejecuta análisis de código automáticamente antes de cada implementación.
Establece umbrales de severidad según las reglas de CI/CD.
Revisa periódicamente el Resultado del escaneo de código y corrige los problemas recurrentes.
Combina Escaneo de código con un Paso manual para exigir una revisión y aprobación antes de la implementación en producción.
Mantén coherentes Escaneo de código las configuraciones en todos los entornos.
Tipos de análisis
La operación de escaneo de código admite dos tipos de análisis: Apex PMD y Flosum Scan. Revisa las descripciones siguientes para elegir el tipo de análisis que mejor se adapte a los estándares de calidad de tu equipo.
Apex PMD
Apex PMD es un conjunto de reglas de código abierto que detecta problemas comunes en los componentes de Salesforce. Incluye menos reglas que Flosum Scan y completa los análisis más rápido, lo que lo convierte en una opción ligera para obtener una respuesta rápida. Elige Apex PMD cuando sus comprobaciones básicas satisfagan tus necesidades o prefieras detectar menos problemas.
Flosum Scan
Flosum Scan es el conjunto de reglas más completo de DevOps, diseñado para equipos que exigen el máximo estándar de calidad de código. Incluye todas las reglas de Apex PMD, además de cientos de comprobaciones adicionales, aproximadamente 6 veces la cobertura de Apex PMD, y amplía el análisis estático a lenguajes que Apex PMD no cubre, incluidos Salesforce Flow y TypeScript. Esta cobertura ampliada ofrece un análisis más profundo y una validación más estricta, dándote mayor confianza en cada implementación. Elige Flosum Scan para obtener la protección más exhaustiva de tu código de Salesforce.
¿Por qué Flosum Scan?
Cobertura de idiomas más amplia: Añade soporte de primer nivel para Salesforce Flow y TypeScript, ninguno de los cuales es analizado por Apex PMD.
Cobertura Lightning más profunda: Incluye 381 reglas para JavaScript y Lightning Web Components, en comparación con 19 en Apex PMD.
Validación de metadatos más sólida: Aplica 18 reglas a Metadatos de Salesforce, en comparación con 2 en Apex PMD.
En continua expansión: El Flosum Scan conjunto de reglas es mantenido por Flosum y seguirá creciendo para mantenerse al ritmo de los cambios de la plataforma Salesforce.
Cobertura de reglas por idioma
La tabla siguiente enumera los idiomas compatibles con cada tipo de análisis. El gráfico compara la cobertura de reglas de cada tipo de análisis en todos los idiomas compatibles. Usa esta información para confirmar que el tipo de análisis que selecciones proporciona conjuntos de reglas suficientes para los idiomas utilizados en tu rama.
JavaScript / Lightning Web Components
TypeScript
Apex
Metadatos de Salesforce
HTML / Salesforce Lightning Design System
Salesforce Flow
Visualforce

Niveles de severidad
Cuando Code Scan encuentra un problema, asigna un nivel de severidad que refleja cuán crítico es el problema para la calidad de tu código. Usa estos niveles para priorizar correcciones y establecer el umbral de severidad que determina cuándo falla la operación.
Bloqueante
Riesgos graves de seguridad o errores críticos que pueden causar fallos del sistema o pérdida de datos.
Crítico
Problemas significativos que normalmente infringen los estándares de Salesforce AppExchange.
Mayor
Infracciones de mejores prácticas o problemas de rendimiento que afectan al mantenimiento.
Menor
Problemas de calidad de código de bajo impacto o inconsistencias estilísticas.
Información
Mensajes informativos que no requieren ninguna acción.
Configuración de la operación Code Scan
Selecciona la operación y el tipo
Haz clic en el Operación menú desplegable.
Selecciona Escaneo de código.

Haz clic en el Tipo de análisis menú desplegable.
Selecciona el tipo de análisis de código que deseas realizar. Consulta la Operación del pipeline: análisis de código sección anterior para obtener más detalles.

Introduce la descripción y el umbral
(Opcional) En el Descripción cuadro de texto, introduce un resumen de lo que realiza este Code Scan.
Haz clic en el Umbral de severidad menú desplegable.
Selecciona el nivel mínimo de severidad que hará que falle la operación Code Scan. Consulta la Operación del pipeline: análisis de código sección anterior para obtener más detalles.

Resultados de Code Scan
Resumen y registro
Una vez completado Code Scan, puedes ver el resumen de resultados seleccionando el Escaneo de código paso de los resultados de la canalización.

La Resumen de los resultados de Code Scan muestra la siguiente información:
Estado
Completado si todos los problemas encontrados están por debajo del umbral de severidad establecido.
Excepción si algún problema cumple o supera el umbral de severidad.
Duración
Tiempo que tardó en completarse Code Scan, mostrado en horas, minutos y segundos.
Fecha de inicio/finalización
La fecha y hora en que Code Scan comenzó y terminó.
Problemas encontrados
Número de problemas encontrados en cada nivel de severidad.
Registro
Entradas de registro del trabajo de Code Scan. Usa el registro para revisar el estado del trabajo y cualquier mensaje de error.
Ejemplo de un registro de Code Scan:
Resultados de Code Scan
Puedes ver los Resultados de Code Scan para ver en qué archivos de tu rama el análisis encontró problemas y cuántos de cada nivel de severidad se encontraron.
Haz clic en Ver resultado.

En la parte superior de la página de resultados está el número total de problemas encontrados para cada nivel de severidad. Debajo de los totales hay una lista de archivos de componentes con problemas, junto con un gráfico de barras de los problemas organizados por severidad.

Resultados a nivel de archivo
Los resultados a nivel de archivo explican la causa de cada problema y dónde ocurre en el archivo de origen. Revisa cada problema y, cuando corresponda, realiza los cambios necesarios en el componente.
Haz clic en un archivo de la lista para ver la lista completa de problemas.

Si está disponible, haz clic en Mostrar más para ver más problemas encontrados en este archivo.
La captura de pantalla y la tabla siguientes explican la información que se muestra para cada problema.

Nivel de severidad
Un círculo de color con una letra en su interior indica el nivel de severidad. La letra coincide con la primera letra del nombre del nivel de severidad y el color coincide con el nivel. Nota: Mayor y Menor comienzan con M, pero Mayor es naranja y Menor es verde.
Nombre de la regla
El nombre de la regla que marcó el problema.
Descripción de la infracción
Una descripción de la causa del problema.
Ubicación de la infracción
El número de línea y de columna donde se encontró el problema.
Última actualización
¿Te fue útil?