Que faut-il automatiser ?

Il faut automatiser ce qui est « chiant »

Nous avons vu dans un article précédent que nous automatisions instinctivement et ce depuis notre enfance. Plus précisément nous automatisons, en tant qu’humain, ce qui est « chiant ».

Par « chiant » il faut entendre quelque chose de répétitif ou quelque chose de simple mais avec un fort taux d’erreur.

Il semble donc naturel que l’automatisation des tests se concentre sur ce qui est « chiant » dans le test! Mais, qu’elles sont les activités potentiellement automatisables ?

Attention, ce n’est pas parce que c’est potentiellement automatisable qu’il est pertinent de le faire!

Qu’est-ce qui est « chiant » dans les activités de test ?

Je vous propose de commencer par le plus simple, chercher ce qui est répétitif!

Comme activités répétitives et à faible valeur ajoutée nous avons par exemple:

  • L’exécution des tests de régression

L’exécution des tests est la première chose à laquelle on pense lorsque l’on parle d’automatisation dans le domaine des tests. La réponse est simple, l’exécution en elle même n’a que très peu de valeur ajoutée et la démocratisation des méthodes Agiles rend leur exécutions particulièrement fréquente.

Je disais souvent il y a quelques années: si je dois faire la même campagne de test toutes les semaines, je tiens 3 mois avant de me tirer une balle ou de démissionner.

  • La maintenance des tests de régression

La maintenance est une tâche fastidieuse qui peut être automatisée en partie. Il est d’ailleurs très important de le faire car à moyen terme la charge de maintenance peut vite devenir insoutenable et mener à l’échec de l’automatisation! Une manière d’automatiser partiellement la maintenance est de concevoir un automate de test avec une architecture modulaire qui adopte les bonnes pratiques du code (notamment avec une bonne factorisation). Cela permet de mettre à jour en 1 fois chaque étape commune à plusieurs tests!

  • L’édition des bilans de test

Le bilan est le livrable le plus important du test car il en est sa vitrine! Néanmoins, même s’il est indispensable, son architecture est souvent la même et aller chercher les résultats est assez répétitif. Heureusement des outils comme les ALM, Allure ou des simples templates permettent d’automatiser en partie ou totalement ces bilans.

Concentrons nous maintenant sur les activités simples mais à fort taux d’erreur! Il y a par exemple:

  • La création des environnements de test

La création d’environnement de test est primordiale pour pouvoir tester efficacement. Il est même parfois conseillé d’avoir un environnement créé spécialement pour chaque campagne pour être impacté le moins possible par des éléments extérieurs. Cette création est néanmoins assez technique et chronophage. De plus, elle fait appel à des compétences que n’ont pas forcément les testeurs. Il semble donc intéressant d’automatiser ces créations d’environnement ce que fait un outil comme Docker.

  • La création des données de test

La création des données de test est un enjeu très sensible du test. Ces données doivent être pensées en amont afin de permettre au test de s’exécuter correctement de manière fiable mais aussi d’être assez fourni pour proposer des données qui permettent de remonter des anomalies. La création des données doit donc en plus d’avoir une bonne conception, faire appel à une rigueur très importante. L’automatisation de cette activité semble donc également intéressante. Pour cela, des outils de RPA sont souvent utilisés.

  • L’écriture des cas de test après leur conception

L‘écriture des cas de test est quelque chose qui doit être très précis, adopter des pratiques communes car les cas de test doivent être précis, fiables, non ambiguës, facilement maintenables… Cela impose alors une rigueur extrême à faible valeur ajoutée. Ce n’est pas un hasard si les tests exploratoires suppriment cette phase d’écriture! Automatiser cette écriture après une conception est donc une bonne piste d’automatisation. Les outils de MBT comme Yest le permettent.

  • La création des fiches d’anomalies

Les fiches d’anomalies sont des livrables particulièrement important dans lesquels il faut mettre autant d’informations que possible afin de pouvoir reproduire l’anomalie et la comprendre. Ces paramètres peuvent être très nombreux et il est facile d’en oublier. Là encore l’automatisation peut nous aider en pré-remplissant des informations permettant de reproduire l’anomalie.

Conclusion

L’automatisation des activités de test va au-delà de la simple exécution! De nombreuses activités de test sont intéressantes à automatiser. D’ailleurs, dans la plupart des cas énoncés précédemment il existe déjà des solutions d’automatisation. L’automatisation permet de se concentrer sur les activités à forte valeur ajoutée et de rendre le métier encore plus intéressant au quotidien. Néanmoins, il ne faut pas oublier que l’automatisation est un investissement, qu’elle n’est pas toujours une solution adéquate et qu’il faut bien la préparer sous peine d’échouer!

Publié par

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s