Découvrez comment la solution Parasoft Continuous Quality permet de contrôler et de gérer les environnements de test pour fournir des logiciels de haute qualité en toute confiance. Inscrivez-vous pour la démo >>
Des tests d'API rigoureux doivent surmonter une complexité massive, compte tenu d'un grand nombre de cas de test possibles. Les données de message nécessaires pour atteindre les points finaux doivent «couvrir» chaque combinaison de données distincte de valeurs. Cela inclut les valeurs de données saisies par les utilisateurs, ainsi que les actions uniques qu'ils exécutent sur un système. Il inclut également les données machine générées par l'activité des utilisateurs, par exemple le type de contenu et les identifiants de session.
Les tests d'API doivent également prendre en compte les parcours par lesquels les données peuvent circuler via les API. Ils doivent couvrir les combinaisons d'actions et de méthodes d'API qui peuvent transformer les données en route pour atteindre certains points de terminaison.
Mais les API n'existent pas isolément. Ils, par définition, connectent plusieurs systèmes ou composants, de sorte que chaque test est donc un test de bout en bout dans un certain sens. Un ensemble rigoureux de tests d'API doit donc tenir compte du grand nombre d'actions ou de méthodes combinées qui peuvent transformer les données lorsqu'elles transitent par des API connectées.
Un exemple simplifié de manière irréaliste inclurait 1000 combinaisons de données entrées par l'utilisateur, 1000 combinaisons différentes de données générées par la machine et 1000 trajets distincts à travers les actions combinées:
Cela représente déjà 1 milliard de combinaisons, chacune étant candidate à un test d'API. Des tests API rigoureux doivent donc sélectionner un certain nombre de cas de test qui peuvent être exécutés en sprint, tout en conservant une couverture de test API suffisante.
Malheureusement, la techniques de test utilisées dans les tests d'API sont souvent trop manuels et non systématiques pour des tests d'API rigoureux. Les API critiques pour l'entreprise risquent d'être sous-testées à chaque étape du cycle de vie des tests :
Tester des chaînes complexes d'API nécessite plutôt une approche intégrée et automatisée. Les testeurs d'API doivent être en mesure d'identifier le plus petit ensemble de tests d'API nécessaires à la rigueur des tests d'API, en créant systématiquement les données de test et les environnements nécessaires pour les exécuter.
Pour surmonter la complexité des chaînes d'appels d'API, les équipes peuvent bénéficier d'une approche basée sur un modèle pour les tests d'API, dans laquelle les testeurs peuvent générer tout le nécessaire pour des tests d'API rigoureux à partir de modèles faciles à utiliser.
Voici comment cela fonctionne:
Grâce à cette approche intégrée, les équipes d'assurance qualité peuvent elles-mêmes générer tout le nécessaire pour des tests d'API rigoureux. La maintenance des organigrammes centraux permet d'aligner les tests, les données et les services virtuels, en testant des chaînes complexes d'API sur de courtes itérations.
Téléchargez le dernier EBook Curiosity-Parasoft pour découvrir comment cette approche peut maximiser la vitesse et la rigueur de vos tests d'API.
Tom Pryce est un responsable de la communication technologiquement pratique chez Curiosity Software Ireland. Ses intérêts incluent les tests basés sur des modèles, la gestion des données de test et l'automatisation des processus robotiques. Il tweete sous @Curiositysoft.