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 >>

BLOG

Pour faciliter les tests d'API, ajoutez l'apprentissage automatique à votre IA

Pour faciliter les tests d'API, ajoutez l'apprentissage automatique à votre IA Temps de lecture : 5 minutes
En ajoutant l'apprentissage automatique à notre outil de création de tests d'API activé par l'intelligence artificielle, nous avons aidé les utilisateurs à faire un bond en avant significatif en termes de productivité et d'efficacité, avec également des avantages supplémentaires!

Nous avons libéré Parasoft SOAtest 9.10.6 aujourd'hui, et j'ai le grand plaisir de partager comment nous avons continué à innover pour conduire l'industrie vers des tests autonomes, notamment avec une nouvelle capacité d'apprentissage automatique qui vous permet d'entraîner le cerveau de Parasoft SOAtest en ajoutant des règles à l'IA sous-jacente dans SOAtest Générateur de test d'API intelligent, pour aider SOAtest à créer de meilleurs scénarios de test d'API pour vous.

La valeur d'ajouter l'apprentissage automatique à la création automatique de tests d'API

Les testeurs d'API passent beaucoup de temps à comprendre le fonctionnement des API afin d'intégrer cette fonctionnalité dans leurs cas de test, et une grande partie de ces informations et connaissances ne partira jamais avec ce testeur. Pour faire un pas de géant en termes de productivité et d'efficacité, vous pouvez à la place capturer automatiquement toutes ces informations spécifiques avec le Smart API Test Generator de SOAtest, puis le former progressivement pour qu'il évolue avec votre logiciel. Sinon, comment pouvez-vous bénéficier de la nouvelle capacité d'apprentissage automatique de SOAtest?

  • La formation Au lieu de passer beaucoup de temps à former de nouveaux testeurs d'API sur le fonctionnement d'API particulières et sur la façon de les combiner pour former des scénarios de test significatifs, ils peuvent utiliser SOAtest à la place. Étant donné que SOAtest comprend déjà les relations entre les API, de nouveaux testeurs d'API peuvent commencer tester les API qui sont connus immédiatement et ajoutent de la valeur tout de suite, plutôt que de passer du temps à apprendre à tout assembler.
  • Capture des connaissances: En tirant parti de l'outil de création de test API activé par l'IA de SOAtest et en l'entraînant de manière incrémentielle, les utilisateurs peuvent définir quelque chose une fois, le verrouiller avec un modèle de test intelligent et partager ce modèle avec un grand nombre de testeurs, particulièrement utile dans le développement agile compte tenu des délais serrés. pour communiquer comment tester des API particulières au reste de l'équipe.
  • Cohérence: Chaque fois que vous créez un test d'API, vous devez réfléchir à ce que vous voulez accomplir pour valider l'exigence. En ayant toutes ces connexions et vos informations d'authentification et de validation préconfigurées pour chaque API, tout le monde est d'accord sur la façon dont elles doivent être testées, et aura des tests d'API cohérents construits sur chaque interface de la même manière à chaque fois. Ceci est également idéal pour le débogage, car si les API suivent toutes un modèle particulier, il devient facile de comprendre où les choses peuvent tomber en panne car il existe un ensemble de règles communes.
  • Couverture: Au lieu d'essayer de gérer et de comprendre l'inventaire complet des API, les utilisateurs peuvent bénéficier de la bibliothèque intelligente de ressources de SOAtest, qui les aide à voir rapidement quelles API ont été testées et à ajouter des règles supplémentaires pour les API qui n'ont pas encore été testées, de sorte que lorsqu'elles sont découverts dans le cadre d'un scénario, le test qui en résulte est aussi significatif que possible.
Qu'est-ce que l'intelligence artificielle dans les tests logiciels?

Comment la création de tests d'API activée par machine learning fonctionne-t-elle?

SOAtest commence par examiner votre trafic API et extraire des scénarios de test API significatifs. Afin de faciliter l'échange de données dynamiques requis pour créer ces scénarios de test, l'IA sous-jacente de SOAtest prend des mesures, telles que la récupération des valeurs de données qui sont réutilisées via des appels d'API et leur connexion, ou l'extraction des informations de réponse pertinentes et la création d'outils de régression automatique. Toutes ces actions peuvent être considérées comme des règles.

Les règles exécutent l'IA

Ces règles ne concernent pas seulement les étapes de test de base - elles indiquent des relations, telles que, si j'ajoute un article à mon panier avec un appel API, l'ID du panier sera important après Je passe un appel ultérieur pour consulter les articles de mon panier. SOAtest comprend automatiquement nombre de ces relations; cependant, les humains sont plus intelligents que les robots (Désolé Marvin), ils peuvent donc étendre les règles en ajoutant un contexte supplémentaire aux ressources API individuelles.

Donc, pour étendre notre exemple avant, s'il est important d'obtenir l'ID du panier, je peux également créer une assertion sur le quantité d'articles que j'ai ajouté à mon panier. Si SOAtest n'a pas déjà pris cela, un humain pourrait entrer et ajouter la nouvelle règle, et une fois que nous avons défini la connexion au quantité dans le panier élément comme une assertion, chaque fois que l'API est utilisée dans le futur, SOAtest remplira automatiquement tous les tests qui ont touché cette API particulière avec les détails corrects pour répondre à cette exigence.

L'IA vous aide à effectuer ces actions répétitives en développant sa propre conscience du fonctionnement de vos API et, par la suite, de la manière dont l'API doit être testée. Cela signifie qu'en l'utilisant simplement, la machine apprendra toutes les actions nécessaires à effectuer sur des API spécifiques. En conséquence, le coût du test de ces API peut diminuer avec le temps.

Pourquoi vous frappez-vous?

Il n'y a aucune raison pour que nous fassions la même action plusieurs fois, alors que nous pouvons entraîner un ordinateur à le faire à notre place. Mais les testeurs le font chaque jour avec des tests d'API, passant trop de temps à comprendre le fonctionnement des API, puis à créer des tests qui valident les éléments appropriés, à comprendre et à créer des connexions de données, des assertions, des authentifications, etc.

Vous vous demandez peut-être: «Cela semble plutôt cool, mais dois-je maintenant passer beaucoup de temps à apprendre à une machine à tester mes API? Cela n’ajoute-t-il pas plus à mon flux de travail? » Heureusement, la réponse est non. Tout d'abord, vous disposez de l'IA intégrée qui commence par établir un grand nombre de ces connexions pour vous. Deuxièmement, vous n'avez pas à le former manuellement. (C'est Parasoft, après tout, et nous aimons rendre les choses automatiques.) Au lieu de cela, nous avons créé un petit connecteur pratique dans SOAtest, afin que vous puissiez tirer parti du travail que vous faites déjà. En un seul clic, SOAtest peut prendre votre cas de test, l'interpréter en règle et le placer directement à l'intérieur du cerveau. Vous pouvez le faire à n'importe quel niveau, soit dans un seul scénario de test, soit dans l'ensemble du fichier de test lui-même.

SOAtest apprend donc du travail que vous effectuez pour créer des tests et applique automatiquement cet apprentissage pour créer des tests qui font la même chose lorsque vous utilisez ces API dans de futurs scénarios de test. Entraîner l'IA au fur et à mesure vous permet d'adopter une approche progressive de l'apprentissage automatique, et tout le monde peut y contribuer. Et à la fin de la journée, vous disposerez d'un ensemble riche et détaillé de ressources décrivant exactement ce que vous devez faire chaque fois que vous testez vos API.

Autres nouvelles fonctionnalités de SOAtest 9.10.6

L'apprentissage automatique n'est pas la seule chose que nous avons ajoutée à cette version. Les utilisateurs peuvent également attendre avec impatience les mises à jour suivantes de SOAtest Générateur de test d'API intelligent.

Assertions automatiques

Nous avons ajouté une approche plus chirurgicale pour valider vos charges utiles en ajoutant des assertions ciblées. Vous pouvez considérer un outil de comparaison comme un instantané de la charge utile de la réponse, qui vous permet immédiatement de savoir si les données changent. SOAtest les rend désormais plus faciles à utiliser en paramétrant des valeurs dynamiques telles que des horodatages, ainsi que des données dynamiques qu'il a vues lors d'appels précédents. Mais si vous souhaitez uniquement valider un élément particulier, c'est là que les nouvelles assertions automatiques intelligentes entrent en jeu. Équipé de la capacité d'analyser les modèles et les relations dans les demandes et les réponses, SOAtest vérifie si les valeurs des éléments clés sont intéressantes. , et s'ils le sont, il crée automatiquement une assertion ciblée sur cet élément particulier et paramètre potentiellement une valeur. Vous pouvez donc adopter une approche plus stratégique de la validation en ignorant le reste du bruit.

Inclusion et exclusion de domaine

Parce qu'il y a tellement de fonctionnalités intégrées dans une interface utilisateur, une action simple peut provoquer un large éventail d'appels d'API qui sont hors de portée du test requis, ou simplement bruyants. Avec cette version, vous pouvez désormais inclure et exclure les appels de domaines spécifiques, ce qui vous permet de limiter la portée de ce qui est capturé en identifiant les domaines qui sont pertinents pour le scénario spécifique. De plus, vous pouvez adopter l'approche opposée en mettant sur liste noire certains domaines que vous ne souhaitez tout simplement pas afficher dans vos tests d'API.

Votre outil devrait fonctionner pour vous

Nos innovations au cours des derniers mois ont toutes consisté à adopter les technologies du futur pour simplifier les pratiques de test critiques. J'espère qu'avec ces nouveaux ajouts à notre technologie, vous serez en mesure d'augmenter votre couverture de test API, avec un regain d'enthousiasme pour la création de suites de tests API significatives. C'est 2018, et votre outil devrait fonctionner pour vous. Laissez-le gérer le grain de sable.

Accélérez la création de tests d'API grâce à l'intelligence artificielle avec Parasoft SOAtest.
Planifiez une démo maintenant
Écrit par

Chris Colosimo

Chef de produit chez Parasoft, Chris élabore des stratégies de développement de produits pour les solutions de test fonctionnel de Parasoft. Son expertise en accélération SDLC grâce à l'automatisation l'a conduit à des déploiements majeurs en entreprise, tels que Capital One et CareFirst.

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