Une société de services éducatifs assure la stabilité des microservices en utilisant des tests contractuels avec le cadre Pact

ÉTUDE DE CAS

Industrie – Santé

Emplacement – San Francisco, États-Unis

Services offerts – Test d’applications mobiles

ÉTUDE DE CAS SUR LES TESTS CONTRACTUELS DE MICROSERVICES

À l’aide du service de test de microservices de Zuci, le leader des services éducatifs mondiaux est passé à une approche axée sur l’API et à des tests axés sur le consommateur pour permettre le travail en parallèle et dissocier les équipes.

Notre client est l’un des principaux services d’éducation mondiaux, aidant les gens à atteindre leurs objectifs d’éducation internationale. Le client dispose de plus de 70 bureaux répartis dans plus de 61 villes en Inde, guidant les étudiants et leurs familles tout au long du processus d’études à l’étranger – sélection de l’université / des cours, soumission de la candidature, assistance dans le processus de visa et planification avant le départ.

À PROPOS DU CLIENT

ÉNONCÉ DU PROBLÈME

La plate-forme de l’entreprise a été construite à l’aide d’une architecture de microservices, ce qui signifie que chaque service est développé et déployé indépendamment.
Au fur et à mesure de l’expansion de la plate-forme, l’entreprise a reconnu l’importance de concevoir des contrats efficaces d’une manière axée sur le consommateur pour assurer une communication efficace entre les différents services. De plus, ils devaient se prémunir contre les modifications d’un service affectant négativement la fonctionnalité d’un autre service.

Contrats axés sur le consommateur : lors de la conception d’une API, la syntaxe et la sémantique sont conçues par l’équipe de producteurs d’API en étroite collaboration avec les équipes qui consommeront l’API, par opposition à l’équipe de producteurs d’API faisant des hypothèses basées sur le modèle de données sur la façon dont le API devrait regarder. Les équipes de consommateurs d’API déterminent la forme des API.

Pour éviter que leurs simulations ne deviennent obsolètes et pour respecter leurs délais serrés, la société a décidé de tester les simulations d’API en envoyant des demandes aux simulations et aux microservices réels. Le client était à la recherche d’experts en tests automatisés qui pourraient l’aider avec ces exigences de test et renforcer la confiance qu’une nouvelle version d’un microservice n’introduirait pas de changements d’API dans l’environnement de production.

COMMENT ZUCI A AIDÉ

Les équipes de producteurs ont conçu des API destinées à être consommées par d’autres équipes. Pour faciliter la gestion des contrats entre les équipes et permettre le travail en parallèle, des simulations d’API créées par les producteurs d’API ont été partagées avec les consommateurs d’API.

Notre équipe a utilisé le framework PACT pour exécuter les contrats. Voici un aperçu du flux de test PACT.

COMMENT ZUCI A AIDÉ

COMMENT ZUCI A AIDÉ

PACT (acronyme de People, Activities, Contexts, Technologies) est un cadre de test de contrat open source axé sur le consommateur conçu pour tester les systèmes distribués. Il s’agit d’un outil basé sur le code pour tester les intégrations HTTP et de messages à l’aide d’une approche connue sous le nom de tests de contrat. Un test Pact est conçu pour décrire le contrat convenu entre un service et un autre du point de vue du consommateur.

Cette solution s’est avérée efficace pour éliminer le goulot d’étranglement des contrats de test, permettant aux équipes de se concentrer sur la fourniture de fonctionnalités aux clients.

RÉSULTAT COMMERCIAL

PILE TECHNIQUE

ZUCI DONNE DES SUPERPOUVOIRS QA À VOTRE ÉQUIPE

AINSI, VOUS POUVEZ PASSER DU TEMPS À CONSTRUIRE VOTRE PRODUIT, SANS VOUS INQUIÉTER DES CALENDRIERS DE SORTIE