Dans le développement des applications, le ‘continuous testing’ est considéré comme une expression à la mode, c’est en réalité une partie essentielle d’une approche DevOps, et le maillon faible de beaucoup trop de développements et développeurs.
Le test en continu est très souvent réduit à l’exécution de scripts de tests. Cette vision limitée provient de la pratique du contrôle des fonctionnalités d’une application en développement, ce qui est réducteur face au test qui concerne tout le cycle de vie du développement. Avec des clients qui exigent des logiciels de meilleure qualité et toujours plus rapidement, le test en continu est une composante essentielle d’une approche DevOps.
L’objectif du test en continu est d’automatiser la fonction de test – les tests, l’environnement de production des tests et les données de test réalistes - en vue de réduire le temps que le développeur devrait leur consacrer et les erreurs qui lui échappent. C’est pourquoi le test en continu est souvent considéré comme le socle, la première étape de la mise en place de DevOps.
Souvent associé aux équipes agiles, le test en continu concerne au contraire tous les membres des équipes qui participent à la production et au déploiement des applications. Car tous peuvent et doivent participer à la compréhension des applications et à la découverte des parties fragiles du code comme de sa mise en production. En intégrant la solution d’automatisation des tests à l’outil de déploiement des versions, la DSI accompagnera la centralisation de l’exécution et du reporting.
Enfin, tous les projets sont concernés, des plus petits aux plus complexes. Le test en continu doit s’appliquer de bout en bout d’un projet, le plus tôt et le plus souvent possible, et cela jusqu’au déploiement en production. Un risque important ici est de pratiquer l’isolement, c’est à dire d’appliquer à chaque sous-système des tests spécifiques.
Dans la transition vers DevOps, les équipes dédiées aux tests jouent un rôle décisif. Si la mise en place du test en continu est un succès, elle permettra à DevOps de s’étendre du développement, analyse de la couverture du code et supervision de la production, à l’automatisation du déploiement des versions et au provisionnement à la demande. Au final, le test en continu sera l’artisan de la mise en place de la gestion du cycle de vie du développement en continu.
Image d’entête 635876902 @ iStock Lightcome