Blog / 4 facteurs qui ralentissent vos processus d’automatisation des tests

Blog - 4 facteurs qui ralentissent vos processus d’automatisation des tests

4 facteurs qui ralentissent vos processus d’automatisation des tests

L’automatisation des tests a actuellement le vent en poupe, et ce à juste titre. À mesure que les entreprises migrent vers un environnement de test agile, elles réalisent que l’automatisation leur est nécessaire pour atteindre le niveau de couverture du code souhaité et nécessaire à une expérience utilisateur optimale.

L’objectif est certes évident, mais la mise en place d’une stratégie d’automatisation efficace l’est beaucoup moins. Trop d’entreprises investissent dans l’automatisation pour finalement voir leur projet rapidement sombrer à cause d’erreurs classiques. Voici quatre raisons qui expliquent pourquoi certaines entreprises n’arrivent pas à tirer profit de l’automatisation, et les facteurs à considérer en amont pour la mise en place d’une stratégie d’automatisation efficace.

1. Choisir les mauvais outils

La première question à vous poser est de savoir si vous souhaitez acheter ou concevoir vous-même votre framework d’automatisation. La réponse n’est pas si simple. Chaque option a ses avantages et ses inconvénients ; l’important est de trouver ce qui correspond le mieux à votre entreprise.

Êtes-vous une petite équipe qui commence juste à faire ses armes dans l’automatisation ? Débuter avec une solution commerciale clé en main est sans doute la meilleure option à ce stade. Ce choix vous permet de trouver plus facilement un ingénieur test qualifié pour vous mettre le pied à l’étrier. Vous serez également plus serein en travaillant avec des outils qui ont fait leurs preuves tout en bénéficiant d’une assistance pour traiter les bugs que vous pourriez rencontrer.

Pour une équipe qui dispose d’un peu plus de maturité fonctionnelle, l’automatisation open source peut être plus pertinente. Elle permet une personnalisation qui sera appréciée par une équipe expérimentée et une meilleure flexibilité sur le long terme à mesure que votre solution d’automatisation évolue. En revanche, les frameworks open source sont gratuits mais nécessitent souvent une expertise technique plus avancée pour le mettre en place et le personnaliser à votre convenance.

D’autres équipes peuvent opter pour la formule hybride qui a ses propres avantages. Quelle que soit l’option retenue, les outils que vous choisissez pour vos projets d’automatisation doivent être soigneusement analysés et validés par toute l’équipe. Si vous faites le mauvais choix, vous risquez de perdre à la fois du temps et de l’argent.

2. Vouloir aller plus vite que la musique

Une fois que vous avez installé un framework d’automatisation, le réflexe est souvent de vouloir en tirer le maximum en automatisant une partie importante de votre pipeline de déploiement. Cependant, une automatisation excessive et trop précoce va mettre en péril les premiers bénéfices que vous pourriez retirer de l’automatisation. Non seulement l’opération s’avère extrêmement ambitieuse, mais elle risque de créer plus de problèmes qu’elle ne va en résoudre.

L’automatisation ne devrait pas être intégrée directement dans votre pipeline de développement. Vous risquez de créer des problèmes de processus et de build à mesure que vous découvrez des failles dans vos scénarii de test. Lorsque vous vous lancez, il vaut mieux exécuter vos tests d’automatisation en parallèle, jusqu’à ce vous puissiez observer des résultats cohérents. Une fois que vos résultats seront fiables, vous pourrez commencer à intégrer de manière progressive ces scénarii de test directement dans votre pipeline.


Découvrez aussi : Automatisation des tests : trouver la bonne formule


J’ai récemment échangé avec un client à propos de l’échec de ses premiers efforts d’automatisation. Quelques échanges avec l’équipe technique ont permis de faire apparaître le problème très clairement. L’entreprise avait choisi d’intégrer tout de suite les résultats de l’automatisation des tests d’UI dans son pipeline après avoir terminé les tests unitaires et déployé le build dans un environnement d’intégration. Les tests et le déploiement de l’UI ne formaient qu’une seule et même tâche, bloquant la disponibilité de l’environnement tant que les tests n’étaient pas terminés et (pire encore) interrompant le déploiement si les tests de l’UI n’étaient pas concluants.

Bien que la solution ait été rapidement trouvée (ici, migrer les tests d’UI vers un environnement stable en amont le temps que le processus devienne mature, et dissocier les tests des déploiements), les interruptions répétées du workflow de développement ont entraîné une perte de confiance dans le projet qui a finalement été abandonné.

3. Un processus de triage non défini

Une automatisation sans processus de triage est une entreprise vouée à l’échec. À de nombreuses occasions, j’ai pu voir des entreprises patiner faute d’avoir fourni une documentation fiable de leurs bugs. Pour accélérer votre processus de triage, votre équipe de développement doit pouvoir accéder facilement aux logs, aux copies d’écran et aux ressources liées aux résultats des tests. Rien de moins ne pourra suffire.

Gardez à l’esprit que les résultats de vos tests d’automatisation doivent faire l’objet d’un triage comme vos bugs. Avec des tests automatisés évalués en réussite/échec, il est courant d’écarter un échec sans étudier de plus près le problème. Pourtant, les problèmes sont souvent dus à des scripts de test qui ont besoin d’être mis à jour ou à un problème avec l’environnement de test plus qu’au code en lui-même. C’est pour cette raison qu’une phase intermédiaire que l’on appelle le triage est nécessaire, de la même manière que vous hiérarchisez les bugs.

4. Un framework et des scénarii de test obsolètes

L’automatisation est censée faire gagner du temps et des ressources aux équipes de développement, mais faute de maintenance adéquate, l’effet obtenu sera inverse. Les scénarii de test ne sont pas simplement un projet ponctuel que l’on oublie ensuite : ils doivent être mis à jour en permanence pour répondre à des modifications significatives de l’UI, à des mises à jour majeures d’un OS/navigateur, à des modifications de la bibliothèque de scripts, et bien plus encore.

Il est également vital que la mise à jour soit prise en compte dès l’élaboration du framework. Des modèles de conception trop complexes peuvent générer une maintenance difficile, chronophage et coûteuse (par ex : stratégies pour les locators, modèles Page factory) qui feront dérailler vos efforts d’automatisation. C’est d’autant plus important si l’on tient compte du taux de rotation de vos équipes et de la nécessité pour de nouveaux développeurs de se familiariser rapidement avec un nouveau framework.

Il peut parfois être difficile pour une entreprise de devenir agile sans automatisation. Mais une équipe qui applique de mauvaises pratiques d’automatisation n’y parviendra pas davantage. Le chemin est parfois long et périlleux, mais prendre les bonnes décisions dès le départ portera ses fruits sur le long terme. Une bonne mise en pratique de l’automatisation des tests est dès lors essentielle ; ce guide peut vous aider à y parvenir : Automatisation et tests manuels : trouver le bon équilibre.

Published: June 15, 2018
Reading time: 7 min

5 Threats to Streaming Content Protection

Protect streaming media revenue against its many emerging threats

Why Retail Digital Quality Matters More Than Ever 2

Against a challenging economic backdrop, our 2023 State of Digital Quality in Retail report highlights global retail testing data trends and how retailers can successfully address their quality issues

‘Tis The Season: What Shoppers Want in Winter 2023

In October 2023, Applause conducted its annual holiday shopping survey to gather research on consumer trends ahead of the festive season.

Make Every Day World Usability Day

Take time today to consider how well your digital experiences serve different audiences

Get Ready for the European Accessibility Act

Read the highlights from our recent webinar on how to prepare for the new law

Crowdsourced Software Testing FAQs

We answer some common questions about crowdtesting