SonarQube et Python

Développeur free-lance, je conçois vos outils informatiques sur mesure.

SonarQube et Python

26 avril 2018 Non classé 0

1 – Préparation de la machine

Il faut bien évidemment commencer par installer le plugin Python via la page d’administration de SonarQube.
Il faudra aussi installer le package nose pour pouvoir générer le compte rendu des tests dans SonarQube.

2 – sonar-project.properties

Votre fichier « sonar-project.properties » devrait ressembler à quelque chose comme ça :

# required metadata
sonar.projectKey=bvr:my_project
sonar.projectName=my_project
sonar.projectVersion=1.6.0
# path to source directories (required)
sonar.sources=.

sonar.language=py

# Résultat des tests unitaires
sonar.python.xunit.reportPath=nosetests.xml

# Compre rendu du Code coverage
sonar.python.coverage.reportPath=coverage.xml

3 – Utilisation basique

On commence par lancer les tests :
src$ nosetests3 --with-xunit --cover-xml
Puis lancer le scan de SonatQube :
src$ ~/applis/sonar-scanner-2.6.1/bin/sonar-scanner
Vous devriez désormais avoir le compte rendu de vos tests dans SonarQube.

4 – Intégration dans Eclipse/PyDev

Aller dans Window->Preferences, PyDev->PyUnit.
Sélectionner Nose comme Test Runner, et appliquer les paramètres suivants : --with-xunit --with-coverage --cover-xml


De même que qu’il faut installer « nose », il faudra peut-être installer « coverage ».