Automatisation des tests unitaires et E2E avec Jenkins
Publié le 02/08/2025 dans CI/CD & Automatisation
Introduction
La mise en place d’un pipeline de tests automatisés est cruciale pour garantir la qualité et la stabilité de vos applications. Avec Jenkins, vous pouvez orchestrer vos tests à chaque push, réduire les régressions et accélérer la livraison. Découvrez comment chez echo Dev :
1. Installation et configuration
Pour démarrer :
- Installez les plugins essentiels : Git, Maven/Gradle, Selenium ou Cypress.
- Configurez un agent dédié (Docker ou VM) pour isoler l’environnement de test.
- Paramétrez les credentials (SSH keys, tokens) via
Credentials Binding
.
2. Tests unitaires
Les tests unitaires valident les modules individuellement :
- Créez un job ou un
stage('Unit Tests')
qui exécutephpunit
ouJUnit
. - Générez et publiez les rapports de couverture (
coverage.xml
) via le pluginCoverage
. - Bloquez le pipeline si le taux de couverture est inférieur à votre seuil (par ex. 80 %).
3. Tests E2E
Assurez le bon fonctionnement de l’application dans son ensemble :
- Déployez Selenium Grid ou Cypress sur Docker pour l’isolation.
- Planifiez des exécutions nocturnes (
cron
) pour détecter les régressions. - Utilisez des
Parallel Test Executor
pour réduire la durée des builds.
4. Intégration dans le pipeline
Adoptez la syntaxe déclarative dans un Jenkinsfile
:
pipeline { agent any stages { stage('Checkout') { steps { git 'https://repo.git' } } stage('Unit Tests') { steps { sh 'mvn test' } } stage('E2E Tests') { steps { sh 'npm run cypress:run' } } stage('Build & Deploy') { steps { sh 'docker build .' } } } post { always { junit '**/target/surefire-reports/*.xml' } failure { slackSend channel: '#ci', message: 'Build failed' } } }
Cette structure claire facilite la maintenance et l’évolution de vos pipelines.
5. Reporting et alertes
Pour rester informé :
- Notifications via Slack ou Teams en cas d’échec ou de succès.
- Export automatique de graphiques de tendance (JUnit trends, coverage).
- Archivage des logs et artefacts pour audit et retracing.
Conclusion
Un pipeline de tests automatisé avec Jenkins vous permet de :
- Détecter rapidement les bugs
- Améliorer la couverture de tests
- Accélérer les cycles de déploiement
Pour une intégration optimale et un accompagnement sur-mesure, contactez echo Dev dès aujourd’hui !