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