Scarica un report in PDF da SonarQube
o crea un report personalizzato a partire da un modello ODT.
Utilizza il Centro di aggiornamento di bitegarden o copia il file .jar scaricato nel folder dei plugins di SonarQube™:
$SONAR_HOME/extensions/plugins/
Puoi utilizzarlo immediatamente, non è necessario eseguire una nuova analisi per poter scaricare i reports.
Puoi trovare tutti i report relativi a questo plugin nell'opzione "More ..." e poi "Reporting" nel menu dello spazio del progetto di SonarQube™.
Potrai scaricare tutti quelli disponibili nella pagina di gestione dei report:
- Executive PDF Summary Report: tutte le metriche più importanti in una pagina..
- Issue Breakdown PDF Summary Report: questo report in PDF estende il report esecutivo con il riassunto delle evidenze trovate per ogni regola (una pagina per ogni regola). Include metriche generali e il codice nuovo, e un riassunto delle evidenze trovate per ogni regola.
de código nuevo, y un resumen de evidencias detectadas por regla.
- Full Issue Breakdown PDF Report: questo report in PDF estende l'Issues summary breakdown con tutte le informazioni sui problemi. Include metriche generali e nuove metriche del codice insieme a tutti i problemi basati sulle regole.
- Excel Report: Questo report Excel contiene tutte le informazioni per il tuo progetto.
- Custom Open Document (ODT) Report: un report personalizzato generato da un modello Open Document che è possibile modificare.
Pagina di gestione dei reports generata dal Report Plugin per SonarQube
Crea il tuo report personalizzato e configura il plugin per poterlo utilizzare attraverso le impostazioni di amministrazione
Report Plugin per SonarQube ™ consente di configurare il modello globalmente o per progetto. Inoltre, i modelli sono forniti tramite URL, quindi non è obbligatorio avere accesso alla macchina su cui è in esecuzione SonarQube ™.
Scarica il modello predefinito per visualizzare un esempio.
La creazione di un rapporto personalizzato risiede nelle impostazioni del modello. Il modello è un OpenDocument che può essere editato con Open Office o LibreOffice.
Per generare i modelli viene utilizzato un sottoinsieme di FreeMarker. Alcune espressioni valide sono:
${ncloc} : Sostituisci l'espressione ncloc con il suo valore. Se ncloc non è disponibile in fase di esecuzione, la generazione del report si bloccherà.
${ncloc!} : Sostituisci l'espressione ncloc con il suo valore, se esiste.${ncloc!"No lines"} : Sostituisci l'espressione ncloc con il suo valore, se esiste. In caso contrario, mostrerà "Nessuna riga".
[#if ncloc > 10000] : Se ncloc> 10000 mostriamo tutto fino a "else", altrimenti mostriamo il blocco di testo successivo.Big project[#else]Small project [/#if]Devi stare attento a come OpenOffice / LibreOffice genera i modelli. Accade spesso che le espressioni non vengano salvate come un singolo elemento. Per risolvere questo, dobbiamo cliccare su "cancella formato diretto" (selezionare il testo e cliccare con il tasto destro).
Nota che tutte le espressioni devono essere ben formate e valutabili per funzionare correttamente.
Le variabili disponibili sono tutte le metriche esistenti in SonarQube per il progetto, i trattini ('-') vengono sostituiti dai trattini bassi ('_').
Inoltre, puoi utilizzare queste variabili per inserire i metadati del progetto:
project_name: Nome del progetto, dell'app o del portfolio SonarQube
project_key: Chiave del progetto SonarQube, dell'app o del portfolio
project_version: Progetto SonarQube, versione app o portfolio
analysis_date: Data di analisi del progetto SonarQube o dell'app
project_analysis_id: ID del progetto SonarQube o dell'analisi dell'app
branch_name: Nome del progetto SonarQube o del ramo dell'app
project_quality_gate_id: Nome del progetto SonarQube o del ramo dell'app
project_quality_gate_name: Nome del progetto SonarQube, dell'app o del portfolio Quality Gate
project_quality_gate_is_default: Restituisce true se il progetto SonarQube, l'app o il portfolio Quality Gate è predefinito o false in caso contrario
isPullRequest: Restituisce true se il report è generato da Pull Request o false in caso contrario
pull_request: Restituisce la chiave della richiesta pull (se il rapporto viene generato dalla richiesta pull)
issues_breakdown: Elenco con tutti i problemi ordinati per gravità e conteggio
severity: Gravità del problema
ruleMessage: Informazioni sul messaggio della regola
type: Tipo di problema (Bug, Vulnerability, Code Smell)
ruleLanguageName: Linguaggio di emissione (Java, Javascript,...)
issueCount: Problemi totali per una regola specifica
[#list issues_breakdown as issue]
Gravità : ${issue.severity}
Regola : ${issue.ruleMessage}
Tipo : ${issue.type}
Lingua : ${issue.ruleLanguageName}
Questioni : ${issue.issueCount}
[/#list]
quality_gate_details
status: Stato del cancello di qualità del progetto
conditions: Elenco con le condizioni di Quality Gate
message: Messaggio di condizione
value: Condizione valore effettivo
status: Stato della condizione
threshold: Soglia condizione configurata
comparator: Tipo di comparatore di condizioni (>,<,=,≠)
type: Tipo di condizione (RATING,PERCENTAGE,NUMBER)
Stato del progetto: ${quality_gate_details}
Condizioni: [#list quality_gate_details.conditions as condition]
Messaggio di condizione : ${condition.message}
Valore della condizione : ${condition.value}
Stato della condizione : ${condition.status}
Soglia di condizione : ${condition.threshold}
Comparatore di condizioni : ${condition.comparator}
Tipo di condizioni : ${condition.type}
[#/list]
sonarqube_project
key: chiave del progetto, dell'app o del portfolio SonarQube
name: nome del progetto, dell'app o del portfolio SonarQube
lastAnalysis: data dell'ultima analisi del progetto SonarQube (solo sui progetti)
versione: versione del progetto SonarQube (solo su progetti)
sonarQubeQualifierKey: chiave del qualificatore di progetti, app o portfolio SonarQube (TRK, APP, VM, SVW)
sonarQubeQualifierName: nome del qualificatore del progetto, dell'app o del portfolio SonarQube (PROGETTO, APPLICAZIONE, PORTFOLIO)
sonarQubeQualifierTranslated: qualificatore di progetto, app o portfolio SonarQube tradotto (progetto, applicazione, portfolio)
qualityGateStatus: progetto SonarQube, app o portfolio quality gate (OK, ERROR, NONE)
branchName: nome della filiale del progetto SonarQube
isMainBranch: Definisci se il ramo selezionato è principale o meno (true, false)
Nota: i valori sono stringhe non booleane
Chiave del progetto: ${sonarqube_project.key}
Nome progetto: ${sonarqube_project.name}
Ultima analisi del progetto: ${sonarqube_project.lastAnalysis}
Versione progetto: ${sonarqube_project.version}
Chiave qualificatore progetto: ${sonarqube_project.sonarQubeQualifierKey}
Nome qualificatore progetto: ${sonarqube_project.sonarQubeQualifierName}
Qualificatore di progetto tradotto: ${sonarqube_project.sonarQubeQualifierTranslated}
Porta di qualità del progetto: ${sonarqube_project.qualityGateStatus}
Nome del ramo del progetto: ${sonarqube_project.branchName}
È il ramo principale: ${sonarqube_project.isMainBranch}
Dai un'occhiata al modello predefinito per vedere un esempio di come funziona.
Licenza di prova
400 €/anno