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

Forrester: Automatisation des tests, tests d'API et virtualisation de services dans DevOps

Par Parasoft

19 mai 2016

3  min lire

A partir de Diego Lo GuidiceDiscours de la Conférence sur la livraison continue:

«Pour que la livraison continue et l'agilité réussissent, nous devons ramener les tests manuels de 60 à 80% de l'effort de test à 5 à 20%. Cela ne disparaîtra jamais. Les tests manuels sont très importants - parfois cela ne vaut pas la peine d'automatiser quelque chose, et parfois vous ne pouvez tout simplement pas automatiser quelque chose.

Comment augmenter le pourcentage d'automatisation à environ 60-80%?

Mettre l'accent sur les tests d'API

Pour augmenter l'automatisation, vous devez aller au-delà de l'interface utilisateur et utiliser les tests d'API. Les tests d'interface utilisateur ne suffisent pas pour tester une application et automatiser les tests pour les applications distribuées avec des services Web, des API RESTful, etc. Cela ne vous aidera pas à comprendre tout ce qui se passe dans les coulisses de votre application Web ou mobile. Les applications modernes nécessitent une approche de test basée sur une architecture en couches et découplée. En fait, le Web, les mobiles, les appareils connectés (IoT), le cloud et les services tiers nécessitent une approche de test basée sur une architecture à plusieurs niveaux.

De plus, les boucles de rétroaction rapides d'Agile interrompent fréquemment les suites de tests de l'interface utilisateur uniquement. Le développement agile encourage le changement. Lors du développement par itérations courtes, les suites de tests automatisées basées sur l'interface utilisateur sont souvent interrompues dès qu'un changement se produit, même pour de simples modifications de la disposition de l'interface graphique ou des changements inattendus du comportement des services back-end. Tous les outils n'en souffrent pas, mais la plupart des outils traditionnels en souffrent.

Téléchargez la recherche de Forrester sur les tests d'API et l'automatisation des tests fonctionnels

 

"Shift Left" et démarrer l'automatisation des tests plus tôt

Pour "décaler vers la gauche" et améliorer la qualité, vous devez:

  • Apportez votre QA, vos testeurs dès le début de chaque sprint et continuez tout au long du processus
  • Inciter les développeurs à effectuer des tests unitaires sur tout le code nouvellement développé (ou modifié)
  • Demandez aux testeurs de travailler avec les propriétaires de produits et les analystes commerciaux dès le début de chaque sprint et de continuer tout au long du processus

Décaler vers la droite: y compris les tests dans la production

«Shift right» est un autre terme que nous commençons à entendre de plus en plus. Une partie de cela concerne les tests en production. Shift right implique également d'apporter des analyses et des données de production et de mettre des outils de surveillance entre les mains des développeurs afin qu'ils puissent voir comment l'application se comporte en production et les utiliser pour éviter que des problèmes ne se produisent. Il se passe toutes sortes de grandes choses dans cet espace, et je pense que nous allons les exploiter de plus en plus. Une autre chose que nous verrons de plus en plus est la surveillance des réseaux sociaux - voir ce que les gens disent à propos de l'application et le réinjecter dans le cycle de livraison.

Simulez les dépendances avec la virtualisation des services

Dans les environnements complexes d'aujourd'hui, comment testez-vous en continu? Vous avez toutes ces dépendances. ING compte 150 équipes de mêlée. PayPal compte 680 équipes de mêlée à travers le monde. Imaginez juste toutes les dépendances là-bas. Il n'y a pas de gestionnaire dans cette salle qui puisse gérer cela sans être accroché aux dépendances.

Pour contourner ce problème, vous devez commencer à simuler des choses, par exemple, si vous n'avez pas accès à un ordinateur central dont vous avez besoin pour les tests, ou si vous testez avec un service tiers. La virtualisation des services peut vous permettre de tester et d'intégrer en continu. C'est ainsi que vous commencez à faire des tests d'intégration depuis le début. Il s'agit d'introduire la simulation dans le processus de développement. Quelle idée! Ceci est utilisé dans de nombreuses autres industries, mais nous ne l'avons pas vraiment utilisé dans l'industrie du logiciel. J'aime penser à cela comme à une soufflerie : vous y placez l'avion et vous testez l'avion en simulant toutes les conditions qui l'entourent. C'est ce que nous devons faire, et la virtualisation des services vous aide à y parvenir.

Pour en savoir plus sur la virtualisation des services, veuillez visiter : www.parasoft.com/blog/what-is-service-virtualization

En savoir plus sur la conférence sur la livraison continue

Vous voulez en savoir plus sur le discours d'ouverture de la conférence sur la livraison continue de Diego Lo Guidice? Découvrez ces blogs et vidéos antérieurs:


 

 

 

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.