16 juillet 2019

7min

Test IT

L’informatique s’est immiscée dans nos vies, aussi bien professionnelles que personnelles, au point d’être indispensable au bon fonctionnement de multiples tâches quotidiennes. Son omniprésence l’a rendue invisible. Pourtant, les attentes vis à vis de cette technologie sont importantes.

Le testing, maillon central de la révolution technologique mondiale

Une expérience dégradée est tout de suite perçue comme une perte de temps, un dysfonctionnement insupportable. Or, l’informatique, pour contenter, voire devancer, les besoins de l’ensemble de ses « clients » et leur proposer des expériences utilisateurs satisfaisantes, doit relever de nombreux défis.

Le test, en tant qu’expertise, est un maillon central dans le cycle de delivery. Il contribue fortement à l’atteinte d’objectifs toujours plus exigeants, en s’adaptant en permanence aux nouveaux enjeux de conformité et aux besoins métiers de fiabilité, de performance et d’ergonomie. Il est aussi garant des impératifs réglementaires et de sécurité.

L’organisation Agile se manifeste par la mise en place massive de cycles de développement de plus en plus courts qui présentent l’avantage de réduire au maximum le time-to-market. De cette organisation est née l’Agile Testing. Tous les acteurs concernés sont ainsi rapprochés à travers la mise en œuvre d’usines d’intégration continue et de testing factory.

Demain, les projets liés à l’intelligence artificielle, le Big Data ou la 5G comporteront tous un volet « qualité », fondé sur le testing. En tant qu’expertise, le test est vite amené à intégrer ces nouveaux contextes pour atteindre l’exigence requise et être, plus que jamais, source de valeur.

Les nouveaux enjeux du test

Le test se confronte à de nouveaux enjeux. Des services de plus en plus complexes voient le jour et évoluent à toute vitesse. Ces expériences privilégient et favorisent l’interconnexion des environnements et l’hétérogénéité des offres. L’exemple des prestations combinées (avion + hôtel + location voiture) ou l’omnicanalité en sont de bonnes illustrations.

L’essor prévisible des objets connectés, déjà plus nombreux que les êtres humains, ainsi que l’apparition sur le marché de robots de plus en plus sophistiqués va contraindre les testeurs à relever de nouveaux challenges. Une fois encore, les aspects de sécurité et de confidentialité seront au cœur des périmètres à valider.

En parallèle, les réseaux sociaux et les sites de e-commerce, combinant les rôles « clients/fournisseurs », redistribuent en permanence les rôles entre acheteurs et vendeurs. Airbnb, Ebay, Le bon coin, Vinted en témoignent. Ces mouvements innovants dans les rapports marchands nécessitent une réelle simplicité d’usage, associée à une performance et une sécurité irréprochables. Autant de défis que les testeurs vont devoir relever par leur créativité et leur capacité d’adaptation.

La méthodologie au cœur de la proposition de valeur du test

Maîtriser ces nouveaux fondamentaux demande de rechercher en continu quelles seront les approches méthodologiques les plus adaptées. L’accompagnement du capital humain est indispensable, ainsi qu’un travail sur l’émergence de nouvelles solutions techniques ou de services dédiés, permettant de répondre aux besoins les plus spécifiques.

Le testeur est un véritable pivot, à cheval entre l’univers technique des développements et celui, stratégique, des enjeux métiers. Cette position l’amène à renforcer sa place technico-fonctionnelle. Son savoir-faire méthodologique doit intégrer le besoin et l’anticipation des tests au plus proche des développements dans un sens (shift left testing) et dans l’autre (shift right testing), vers la recette et la valeur métier, voire la contribution aux challenges de l’exploitation.

Cette capacité d’interaction permanente avec des acteurs diversifiés illustre clairement l’importance du volet humain dans la constitution et la formation continue des équipes de qualification. L’évolution des impératifs de ce métier sous-entend un recrutement aussi bien axé sur les soft skills que sur les compétences techniques. Flexibilité, réactivité, esprit d’équipe, adaptation permanente sont les atouts d’une activité de test réussie et contributrice de valeur.

Demain, les solutions de test devront combiner périmètre de tests automatisés et cycles exploratoires. La réussite de l’expérience clients sera garantie par l’adoption du point de vue de l’utilisateur. Des plateformes de tests participatifs (crowd testing) fourniront à cet égard de véritables réponses aux enjeux du e-commerce par leur capacité à s’adresser à des zones géographiques et des cultures très larges.

Enfin, on peut supposer que les tests des assistants vocaux nécessiteront une refonte des méthodologies existantes. La voix, en tant que technologie émergente et complexe, sera un réel défi pour les tests.

L’ensemble des solutions mises au service de la qualité logicielle devront ainsi constituer un catalogue de services on demand en perpétuelle évolution et adaptation. Ce concept de Tests as a service permettra aux acteurs clefs du secteur d’innover sur des périmètres encore confidentiels mais sur lesquels un avantage concurrentiel pourra s’établir.

Intervention humaine et robotisation

Aujourd’hui, dans nos environnements dynamiques et concurrentiels, la défaillance n’a plus sa place. Certes, l’informatique s’est immiscée partout, au point que changer d’assurance ou de téléphone portable peut désormais se faire en quelques clics. De tels délais étaient encore impossibles il y a dix ans. Cette transformation des modes de vie a été rendue possible par des progrès techniques et une évolution du cadre légal. Mais ces possibilités décuplées se sont accompagnées d’une demande toujours plus intransigeante et impatiente. Le client, aujourd’hui, se lasse vite et déteste cela. Les fournisseurs, pour rester compétitifs, doivent délivrer un service constamment innovant. Car si l’apport de nouveauté, de valeur et de qualité, n’est pas au rendez-vous, le client s’en va aussi rapidement qu’il est venu.

Outil majeur pour répondre à la recherche permanente de qualité et de nouveauté, les tests doivent être de plus grande qualité et réalisés en plus grande quantité. La qualité délivrée doit être contrôlée pour être irréprochable. Cette qualité doit être perçue, mesurée. Montrer que les enjeux de qualité sont atteints demande une validation, passant nécessairement par des activités de test. Le métier, rendu indispensable, a donc évolué au rythme de la transformation du secteur. Il y a 20 ans, les niveaux d’exigence étaient moins stricts qu’aujourd’hui. Mais la grille s’est resserrée autour d’un objectif zéro défaut. Et tout naturellement, l’apport de qualité, que l’agilité permet, a un impact sur la quantité de tests à réaliser. Bénéficier constamment de services enrichis implique des livraisons plus fréquentes. L’effort de test se voit démultiplié, soumis à des enjeux de turn over et de production extrêmement forts. En augmentant ces apports de nouveauté, c’est tout le métier du test qui a évolué, aussi bien dans ses techniques employées, son approche méthodologique que dans ses façons de travailler. L’automatisation devenant gage de performance et uniquement moyen de respecter son time-to-market.

Avant les années 90, le test était réservé au secteur industriel. Mais l’arrivée de projets majeurs, comme l’an 2000 ou la mise en place de l’Euro, a fait entrer l’industrialisation des tests dans le périmètre du tertiaire financier. Des systèmes d’information gigantesques allaient être étudiés et passés au crible. Tout ce qui allait être produit serait capitalisé puis réutilisé sur un autre projet.

L’agilité a ainsi réveillé l’exécution automatique des tests. Aujourd’hui, on ne peut pas ne pas automatiser les tests. Les efforts liés aux tests de non régression se sont démultipliés et ne peuvent plus être couverts manuellement, sous peine d’épuiser tous le budget lors des premières itérations. Par ailleurs, un robot rejouant les tests à l’infini ne se lassera pas ! Il ne fera donc pas d’erreur et s’avèrera plus performant pour exécuter les tests qu’un humain qui, lui, pourra se tourner vers des tâches à plus grande valeur ajoutée. L’humain se responsabilisera sur la conception des tests, par exemple, ou la mise en place de stratégies adaptées et diversifiées en fonction des contextes. Par ailleurs, l’automatisation, via le continuous testing, doit aujourd’hui prendre sa place au sein des chaînes DevOps afin d’optimiser et d’accélérer plus encore la démarche de production logicielle.

Depuis quelques années, LE TEST, son périmètre et ses enjeux, en s’adaptant aux évolutions des différents secteurs, ont connu une révolution. Les pratiques ont tellement évolué que des normes internationales ont été mises en place. Un langage commun s’est établi au niveau mondial, rassemblant quelques 800 000 certifiés dans le monde autour de l’ISTBQ (International Software Test and Qualification Board). Le métier de testeur est ainsi devenu une expertise à part entière, relevant de pratiques, d’outillages et de savoir-faire spécifiques.