Accélérer la maturité DevOps grâce à la couverture de tests automatisés

Un chef de file australien de la logistique a relevé les défis DevOps en augmentant la couverture des tests unitaires sur les systèmes existants, surmontant les limites de ressources et la complexité du code pour faire progresser ses objectifs de transformation.
5 min de lecture
Partager

Le défi

L’organisation faisait face à des obstacles importants pour améliorer sa maturité DevOps, notamment en ce qui concerne la couverture des tests unitaires. Les principaux défis comprenaient :

  • De grands volumes de code source patrimonial répartis sur plusieurs environnements informatiques
  • Un mandat cible d’augmenter la couverture des tests unitaires à 80 % pour tous les fichiers sources
  • Des ressources limitées côté développeurs, la plupart étant concentrées sur les projets en cours et les activités courantes
  • Les développeurs manquaient de familiarité avec les bases de code patrimoniales, nécessitant du temps supplémentaire pour comprendre une logique complexe avant d’écrire des tests unitaires

Ces problèmes ont créé des goulets d’étranglement dans l’atteinte d’une meilleure couverture de test et risquaient de retarder la transformation globale DevOps.

Défi

L’objectif

Pour accélérer la création de tests unitaires pour le code patrimonial sans surcharger les développeurs, une approche automatisée était nécessaire afin de réduire l’effort manuel, de minimiser le temps de montée en compétence sur des bases de code inconnues et de prendre en charge la génération de tests en masse pour atteindre efficacement les objectifs de couverture.

Objectif
Objectif

La solution

Un cadre d’automatisation propulsé par Python a été développé pour simplifier le processus :

  • Capacité de téléchargement en lot : les développeurs peuvent télécharger plusieurs fichiers sources à la fois dans le système
  • Génération de tests unitaires en un clic : en une seule action, le script génère des cas de tests unitaires complets pour tous les fichiers téléchargés
  • Compréhension logique basée sur l’IA : en tirant parti de grands modèles de langage, le système interprète la logique source, permettant la création automatique de tests unitaires pertinents alignés sur les objectifs de couverture
  • Convivial pour les développeurs : les tests générés peuvent être affinés, exécutés et intégrés dans les pipelines CI/CD existants, assurant une adoption fluide
Solution

L'impact

La solution a permis d’apporter des améliorations substantielles en matière d’efficacité et de couverture :

  • Augmentation rapide de la couverture des tests unitaires vers l’objectif de 80 % sans consommer de nombreuses heures de développeurs
  • A libéré la capacité des développeurs pour se concentrer sur des activités BAU et des projets à plus forte valeur ajoutée.
  • A réduit la dépendance à la connaissance approfondie du code patrimonial en automatisant l’interprétation de la logique
  • Accélération de la maturité DevOps grâce à une génération de tests unitaires cohérente, évolutive et automatisée
  • Mise en place d’un cadre reproductible pouvant être étendu à de futurs référentiels de code et à des objectifs de couverture évolutifs

Services AWS utilisés

  • Amazon Bedrock
  • AWS CloudTrail
  • Amazon CloudWatch
  • Amazon VPC
Impact
Nuage et écosystème AWS Étude de cas Accélérer la maturité DevOps grâce à la couverture de tests automatisés