Dans un monde où il existe plusieurs applications en concurrence pour tout faire, les entreprises doivent parfaire leurs processus et l’avènement du DevOps a amené à la mise en place de nouveaux standards. Lors du développement d’une application, d’un logiciel ou d’une plateforme SaaS, la réalisation de tests est cruciale, si ce n’est vitale pour la qualité et la fiabilité du produit. Si auparavant, cette étape était réalisée principalement manuellement, les entreprises se tournent progressivement vers l’automatisation de ces tests.
L’importance de l’automatisation des tests
Si le besoin de recourir aux tests n’a jamais souffert d’aucune contestation au sein des entreprises du code, leur automatisation n’a fait l’unanimité que très récemment. Lors d’une entrevue pendant laquelle Guljeet Nagpaul, Chief Product Officer chez ACCELQ, a répondu aux questions de Michael Vizard de Techstrong Group, les deux hommes ont abordé l’importance des tests automatisés.
Dès le début de cette entrevue, Guljeet Nagpaul explique que es entreprises qui conçoivent des applications et des logiciels revoient leurs objectifs à la hausse et doivent de facto accélérer leurs processus afin de livrer plus rapidement. C’est dans cette logique que le besoin d’automatiser les tests s’inscrit. Ces tests permettent de détecter rapidement et avec précision les bugs.
Les tests automatisés permettent de faire d’importantes économies sur le long terme. Ils limitent l’intervention humaine, qui à la longue peut fatiguer les préposés sur des tâches à faible valeur ajoutée. La répétition de ces tâches crée généralement une routine qui au final peut être source d’erreurs d’appréciations. Le gain de temps important de cette démarche permet de corriger rapidement les imperfections sans impacter sur l’expérience client.
Pour faire le lien avec le DevOps, Le Chief Product Offficer d’ACCLEQ explique que :
« les organisations ont réalisé que sans tests continus, il n'y a pas de livraison continue, et c'est vraiment le nœud du problème, si vous ne pouvez pas avoir une automatisation de test fiable, fiable et continue pour combler ce fossé entre votre développement et vos opérations, il n'y a pas de DevOps, car c'est le pont clé entre votre développement et vos opérations, n'est-ce pas ? ».
Plusieurs types de tests automatisés
Il existe 3 principaux types de tests automatisés.
- Les tests unitaires
Ce sont les plus simples et les plus faciles à mettre en œuvre. Ce type de test automatisé cible de manière isolée chaque fonction spécifique du code.
- Les tests d’intégration
Lors d’un test d’intégration, les interactions entre les différentes unités sont vérifiées. Dans l’idéal, ce test est à réaliser après les tests unitaires.
- Les tests de bout en bout
Ces tests surveillent entièrement les flux d’utilisateurs. Cela concerne entre autres l’atteinte des pages d’inscriptions, le remplissage des formulaires et la création des comptes d’utilisateurs.
Toujours selon Guljeet Nagpaul :
« Les tests unitaires ou simplement le déplacement vers la gauche en termes d'automatisation ne suffiront pas. Vous auriez vraiment besoin de cette validation de bout en bout, et chaque application a au moins cinq intégrations en amont et cinq en aval, ce qui signifie que la véritable automatisation et la véritable expérience client en termes de flux de travail de bout en bout doivent être automatisées, à tous les niveaux. »
L’automatisation des tests convainc 97% des professionnels
Une étude réalisée par Kobiton sur 150 responsables tests dans les entreprises d’au moins 50 salariés a permis de conclure que 97% des professionnels automatisent leurs tests. La réduction des coûts des tests fait partie de leurs principales motivations, outre le besoin d’améliorer la qualité de leurs produits pour une expérience utilisateur optimale.
Kevin Lee, PDG de Kobiton déclare que "Dans une étude que nous avons menée il y a deux ans, la moitié des testeurs interrogés ont déclaré que leurs programmes d'automatisation étaient relativement nouveaux, et 76 % ont dit qu'ils automatisaient moins de 50 % de tous les tests" avant d’expliquer que "Près de 100% des testeurs participant à l'étude de cette année utilisent l'automatisation, ce qui témoigne du chemin parcouru par l'industrie."
Bientôt une pénurie de testeurs ?
Mike Vizard a demandé à Guljeet Nagpaul si le nombre d’applications en cours de conception était en passe de devenir largement supérieur au nombre de testeurs. Ce dernier a avoué avoir eu une réflexion sur ce sujet avec leur analyste Forrester. Selon lui, les testeurs dans le milieu du DevOps doivent prendre du recul et comprendre qu’il faut réellement tester avant de procéder de manière traditionnelle. L’automatisation joue déjà un rôle essentiel face à ce défi mais il faut également un nouvel état d’esprit. Cela permettra de repenser la configuration des applications.



