La stratégie de choix entre les tests manuels et automatisés est déterminée par de nombreux facteurs, y compris le coût, les objectifs, la stabilité des fonctionnalités et les ressources humaines disponibles.
Historique de la question : Au début de l'automatisation, il était considéré comme un objectif d'atteindre 100 % de tests automatisés. Par la suite, il est devenu évident que toutes les vérifications ne doivent pas être automatisées — certaines tâches sont plus simples, plus rapides et moins chères à réaliser manuellement.
Problème : L'automatisation n'apporte des bénéfices que lors de l'exécution fréquente et répétée des mêmes scénarios. Les vérifications ponctuelles, rapidement évolutives ou subjectives (visuelles, UX) sont beaucoup plus simples à réaliser manuellement. En essayant "d'automatiser tout", le budget gonfle rapidement, et les avantages sont perdus.
Solution : Il est souhaitable d'automatiser principalement ce qui :
Les tests manuels sont pertinents pour :
Caractéristiques clés :
Peut-on tirer profit en automatisant tous les tests d'un projet ?
Non, car de nombreux tests changent avant de rentabiliser les efforts investis, et le maintien de l'automatisation coûte plus cher que l'exécution de ces mêmes tests manuellement.
Les tests manuels peuvent-ils être obligatoires lors du déploiement en production ?
Oui, car certaines tâches (en particulier celles liées à l'UI/UX et à la régression visuelle) sont difficiles ou impossibles à automatiser adéquatement.
Est-il rentable d'automatiser les tests de tâches "ponctuelles"/exploratoires ?
Non, l'automatisation exige du temps et des ressources, ce qui ne sera pas rentable pour un test ponctuel ou rarement utilisé.
L'équipe a décidé d'automatiser tous les cas de test manuels, y compris la vérification de la compatibilité entre navigateurs sur des appareils non standard et le contrôle visuel des mises en page. Au final, des centaines d'heures ont été dépensées pour maintenir des tests obsolètes.
Avantages :
Inconvénients :
L'équipe, avec le manager, a élaboré une liste de scénarios critiques pour l'entreprise (enregistrement, vérification des paiements), qui ont été automatisés de manière stable; tout le reste est testé manuellement ou partiellement (en utilisant des tests exploratoires).
Avantages :
Inconvénients :