Les 3 niveaux de test automatisé

20 octobre 2023
Test

😩 Quand une application commence à avoir beaucoup de fonctionnalités, le test manuel devient lent et répétitive. Si votre nouvelle fonctionnalité touche les éléments existants dans le code, vous devez tout retester pour vérifier si vous n’avez pas cassé des choses quelques part.

😁 Les tests automatisés vous permettent de gagner du temps lorsque vous ajoutez des fonctionnalités car les tests des fonctionnalités existants sont déjà automatisés et il vous suffit de tester tout simplement les nouvelles fonctionnalités.

Les 3 types de tests automatisés sont les tests unitaire, d’intégration et fonctionnels.

  • Tests unitaires: Ils vérifient que les fonctions, les classes, les composants, etc répondent aux attentes. Ce sont des tests d’une partie précise de l’application, par exemple, la fonction qui génère le code OTP. L’exécution de ces tests est rapide.

  • Tests d’intégration: Ils vérifient que les modules de l’application fonctionnent ensemble. Par exemple un service qui permet d’insérer un utilisateur dans la base, ce service intègre d’autres modules comme la validation, l’interaction avec la base.

  • Tests fonctionnels (Tests end-to-end): Ces tests visent à simuler le comportement d’un utilisateur final sur l’application. Comme si vous créiez un bot qui agit comme un utilisateur réel pour tester l’application depuis l’interface. Les tests fonctionnels sont très utile mais ils sont lent et coûteux en termes de ressources car ils ont besoin d’un environnement complet de l’application pour s’exécuter.

✅ Ce qu’il faut retenir sur ces 3 types de tests, c’est qu’il faut prioriser davantage les tests unitaires, puis les tests d’intégration et enfin les tests fonctionnels. Plus le test est rapide, plus vous pouvez itérer rapidement dans le développement en cas des bugs. Essayez de ne pas vous baser uniquement sur les tests fonctionnels. Fait tout simplement les scénarios clés de votre application car lorsque les tests vont grossir, vous risquez d’attendre une demi-journée pour que les tests soient terminés.