Découvrez comment intégrer facilement l'analyse statique, les tests unitaires et d'autres méthodes de test de logiciels C et C++ dans votre pipeline CI/CD. Inscrivez-vous pour la démo >>

Comment les tests d'API automatisés ont permis à une banque néo-zélandaise d'économiser 2.1 millions de dollars

Par Parasoft

7 mai 2015

5  min lire

Pour réduire les risques associés à leurs transactions critiques pour l'entreprise, une banque et un fournisseur de services financiers néo-zélandais de premier plan souhaitaient étendre leurs tests existants basés sur l'interface graphique afin d'exercer plus largement la logique applicative dans les systèmes internes.

Cette logique réside dans leur ESB: un composant de courtier de messages qui propose plus de 80 services et plus de 750 opérations. L'ESB représente un point de défaillance unique au sein de l'infrastructure, mais l'entreprise n'a pas été en mesure de le tester directement ou automatiquement.

Avec l'expertise du partenaire Parasoft IntégrationQA et la solution de test d'API leader sur le marché de Parasoft, la société a acquis une méthodologie de test de service soutenue par des tests automatisés et réutilisables qui ont effectué un large éventail de tests directement à partir de la couche service/API.

Résultat: ils ont économisé plus de 2.1 millions de dollars NZD en coûts de test et de développement sur une période de 18 mois.

Le défi: veiller à ce que la logique applicative réponde en permanence aux attentes en matière de fiabilité élevée

Le processus de test fonctionnel existant de la société a fourni un certain degré de test en boîte noire pour les points d'intégration entre les systèmes frontaux et back-end. Cependant, la société craignait que cette approche consistant à s'appuyer sur le front-end comme seul point d'entrée pour tester les nouvelles fonctionnalités, les mises à jour technologiques et les changements à grande échelle de l'infrastructure existante ne soit pas suffisamment profonde et rigoureuse pour garantir que la logique de l'application en permanence satisfait aux normes de fiabilité élevées de l'entreprise.

Pour réduire leur exposition aux risques, ils souhaitaient étendre leurs scénarios de test de bout en bout existants pour inclure des tests directs et approfondis de l'ESB et des services associés. Cependant, ils n'avaient pas accès à l'expertise et à la technologie du domaine nécessaires pour porter leur processus de test existant à ce niveau.

La solution: les tests automatisés au niveau de la couche message

Pour aider l'entreprise à atteindre ses objectifs de qualité, IntegrationQA a travaillé avec eux pour mettre en place une équipe de test dédiée qui se spécialiserait dans le test de l'infrastructure au niveau du service à l'aide de la solution de test d'API Parasoft. Reconnaissant l'importance de la mise en œuvre de nouvelles technologies dans un processus efficace, IntegrationQA les a également aidés à développer une nouvelle méthodologie de test qui comprenait:

  • Diagnostics de service / vérification de l'état: Établit une suite de tests de fumée de niveau de service pour l'ESB, fournissant une vérification de l'état d'un déploiement d'ESB dans n'importe quel environnement de test. Ceci est essentiel car tout déploiement pour un seul service a également un impact sur les services existants inchangés (puisque l'ESB a été conçu pour avoir tous les services dans le même conteneur).
  • Analyse statique: Analyse le contrat de service pour vérifier sa conformité aux normes acceptées par l'industrie.
  • Test de service: IntegrationQA a établi une approche pour tester l'ESB au niveau du service. L'équipe de test de service a développé la suite de tests suivante pour chaque service:
    • Test de fumée: Via la couche service, assure l'interopérabilité entre le consommateur de services et le fournisseur de services.
    • Transformation: S'assure que la transformation des données est précise et répond aux attentes du consommateur de services.
    • Variance des données: Garantit que le service gère correctement tous les scénarios de données obligatoires et facultatifs possibles.
    • La gestion des erreurs: Garantit que le service transmet avec précision une occurrence d'erreur au consommateur de service ou aux mécanismes de journalisation.
    • Scénario / Test de bout en bout: Un aboutissement contextuel des tests ci-dessus; vérifie que les services implémentent correctement le workflow métier attendu.

Résultats: réduction des risques, économies de coûts et temps supplémentaire pour la validation des exigences de l'entreprise

En utilisant les nouvelles technologies et méthodologies, l'équipe a pu «déplacer à gauche» ses tests fonctionnels de la phase de test du système aux phases de test d'unité et d'intégration. En exposant plus de défauts lorsqu'il est plus facile, plus rapide et moins coûteux de les réparer, ils ont réalisé des économies de temps et de coûts significatives.

Dans tous les projets, 65% à 100% des défauts découverts par l'équipe de test de service ont été identifiés lors des phases de tests unitaires et d'intégration. Environ 75% des défauts provenaient du niveau ESB, qui a reçu une couverture de test limitée avec leurs méthodes de test précédentes (comme le souligne le fait qu'un défaut ESB majeur a été identifié pour 10,000 55 enregistrements traités). Dans tous les projets, entre 100% et 2% des défauts découverts ont été classés dans la gravité XNUMX et n'ont pas pu être différés.

Réduction des coûts par environnement de test

Une fois que la confiance dans l'équipe de test de service a augmenté et que la nouvelle méthodologie de test de service a ajouté une valeur prouvée aux efforts de qualité de l'entreprise, elle est devenue une partie intégrante de la planification et des estimations des tests de tous les projets de pipeline. Pour faire face à l'augmentation de la charge de travail, l'équipe est passée de 3 membres initiaux à 10 analystes de tests techniques à plein temps. IntegrationQA a assumé le rôle de chef d'équipe, de consultant et de facilitateur pour plusieurs projets internes à différentes étapes du cycle de vie.

Au fur et à mesure que les nouveaux processus et technologies devenaient plus enracinés et matures, l'équipe a élargi la portée des travaux pour inclure les tests de performance de l'ESB, les tests de messages d'application mobile, les tests ETL de l'entrepôt de données, ainsi que les tests d'applications des moteurs de surveillance internes pour le client. comptes et transactions.

La société a bénéficié des avantages suivants en utilisant les tests d'API Parasoft pour mettre en œuvre la méthodologie de test de service recommandée:

  • La possibilité de commencer à tester toutes les exigences liées au service - ainsi que de nombreuses exigences fonctionnelles - pendant les phases de test d'unité / d'intégration a permis une détection plus précoce des problèmes techniques et des économies de coûts significatives en éliminant le besoin de reconcevoir et de retravailler.
  • Le test direct de la logique de l'application a réduit le temps de test fonctionnel et réduit les coûts globaux de test. Une fois que l'équipe a adopté les tests de service, la portée des tests fonctionnels a été réduite pour se concentrer uniquement sur la logique frontale.
  • Le passage à l'automatisation des tests signifiait que les tests pouvaient facilement être répétés pour garantir que les modifications apportées aux applications n'affectaient pas négativement les fonctionnalités testées précédemment.
  • L'exécution continue de suites de tests orientées ESB a permis aux parties prenantes de vérifier quotidiennement si le composant d'infrastructure centrale répondait à leurs attentes.
  • Avec une visibilité accrue (et une meilleure compréhension de) l'ESB et son référentiel de services, l'équipe pourrait planifier plus efficacement - et estimer avec plus de précision - les activités de test nécessaires pour atténuer les risques commerciaux.

En 18 mois, la société a économisé plus de 2.1 millions de dollars NZD en coûts de test et de développement (sur la base des évaluations internes des coûts des défauts de l'entreprise).

En savoir plus sur le cadre de test automatisé des API de cette banque

Lisez le document technique de 12 pages sur les tests d'API pour obtenir des détails sur la façon dont cette société a établi une méthodologie de test de service soutenue par des tests automatisés et réutilisables qui effectuent un large éventail de tests directement à partir de la couche service/API.

Vous verrez de près comment ils ont pu créer des tests réutilisables et facilement maintenables qui pourraient exercer de manière robuste l'un des services ESB disponibles via 3 modèles de test principaux:

  • Confirmation - Test de fumée
  • Évaluation - Transformation, variance des données et gestion des erreurs
  • Réplication - Scénarios de workflow d'entreprise

Comparaison des outils de test de l'API Forrester

Si vous envisagez d'intégrer un outil de test d'API dans votre propre organisation, ne manquez pas le nouveau Rapport de vague d'automatisation des tests fonctionnels, qui compare les 9 meilleurs outils de test d'API.

Le processus de développement de la vague actuelle comprenait la génération d'une taxonomie détaillée de 40 attributs de produit, la collecte et la validation de données pour neuf fournisseurs via des évaluations en laboratoire et des entretiens avec les clients, puis le placement des fournisseurs évalués dans l'une des quatre catégories: Leaders, Strong Contenders, Contenders et paris risqués.

Le rapport souligne que les tests d'API sont un composant essentiel pour la livraison d'applications modernes: «Afin de soutenir une qualité continue et un développement plus rapide, en particulier pour ceux qui sont sur un parcours Agile et DevOps, les tests doivent passer d'une approche basée uniquement sur l'interface utilisateur à une interface utilisateur. -Approche API. »

Qu'est-ce que les tests d'API ?

Vous voulez en savoir plus sur les principes fondamentaux des tests d'API ? Jetez un œil à la page de test de l'API Parasoft : https://www.parasoft.com/solutions/api-testing/

Par Parasoft

Les outils de test de logiciels automatisés de pointe de Parasoft prennent en charge l'ensemble du processus de développement logiciel, depuis le moment où le développeur écrit la première ligne de code jusqu'aux tests unitaires et fonctionnels, jusqu'aux tests de performance et de sécurité, en exploitant des environnements de test simulés en cours de route.

Recevez les dernières nouvelles et ressources sur les tests de logiciels dans votre boîte de réception.