Articles

Test de fumée vs Test de Santé Mentale vs Test de régression Expliqué

Introduction

La durée de vie d’un Testeur d’Assurance qualité sera considérée comme incomplète si les termes « Test de fumée », « Test de Santé Mentale » et « Test de régression » n’y sont pas insérés. Bien que ce soient des termes régulièrement utilisés, il existe également des idées fausses courantes.

Avant d’entrer dans les détails des tests de fumée, de santé mentale et de régression et de ce qu’ils signifient réellement, passons en revue certaines idées fausses et mythes courants autour d’eux:

  1. Les tests de fumée et de Santé mentale sont les mêmes et peuvent être utilisés de manière interchangeable: Ce n’est pas vrai et ne devrait jamais être fait, pourquoi? nous en discuterons dans cet article.
  2. Les tests de santé mentale sont équivalents aux tests d’acceptation: Les tests d’acceptation sont effectués pour s’assurer que la version répond à toutes les exigences spécifiées par le client avant la sortie, tandis que les tests de santé mentale sont effectués pour s’assurer que le produit est sain, rationnel pour des tests plus détaillés. Ceux-ci ne sont pas et ne doivent pas être utilisés de manière interchangeable.
  3. Si je fais des tests de fumée, je peux sauter les tests de santé mentale: L’essai de fumée est un essai de très haut niveau, car dans, cet essai est fait pour s’assurer que cette construction est appropriée pour commencer tout autre type d’essai. Par exemple, cela pourrait être juste un test pour s’assurer que la construction s’installe et que le test de santé mentale peut commencer. Bien que parfois, les cas de test de fumée soient exécutés avec des cas de test de santé mentale, ceux-ci ne doivent pas être confondus avec la même chose.
  4. Les tests de régression ne sont pas liés aux tests de fumée ou aux Tests de Santé mentale: En théorie, les tests de santé mentale sont un sous-ensemble des tests de régression. Certains cas de test de régression à haute priorité constituent généralement un cas de test de santé mentale.
  5. Si j’ai l’intention d’exécuter la suite complète de tests de régression – je n’ai pas besoin d’exécuter de test de fumée ou de test de santé mentale: Bien que cela puisse être vrai dans certains cas, car les tests de santé mentale sont de toute façon un sous-ensemble de tests de régression, il est toujours conseillé d’exécuter d’abord les cas de test de santé mentale, puis de les suivre avec le reste des cas de test de régression.

Dans cet article, nous allons essayer d’effacer les confusions ci-dessus une fois pour toutes.

Si vous souhaitez en savoir plus sur les tests manuels, reportez-vous au lien ici.

Remarque: Parce que nous utiliserons le terme ‘Software Build’ plusieurs fois dans l’article, définissons-le ici. La « construction logicielle » est un processus de conversion du code source, en une application utilisateur, après de multiples révisions et modifications de code et la création de la construction logicielle implique plusieurs processus tels que « Contrôle de version, Qualité du code Compilation »et la construction logicielle est également le résultat de ce processus de construction. Dans cet article, une version sera désignée comme une version testable du logiciel.

Test de fumée

Le test de fumée est une approche qui est généralement effectuée pendant les étapes de développement initiales du Cycle de vie du développement logiciel (SDLC) pour s’assurer que les fonctionnalités de base d’un programme fonctionnent correctement sans aucun problème. Il est exécuté avant que des tests fonctionnels détaillés ne soient effectués sur le logiciel.

L’objectif principal des tests de fumée n’est pas d’effectuer des tests approfondis, mais de vérifier que les fonctionnalités principales du programme ou du logiciel fonctionnent correctement. Le test de fumée vise à rejeter une version gravement cassée au stade initial afin que l’équipe de test ne perde pas de temps à installer & testant l’application logicielle.

Le test de fumée est également appelé Test de vérification de construction.

Voyons un exemple simple où on vous donne une application de messagerie à tester. Les fonctions importantes seraient de se connecter à l’application de messagerie, de composer un e-mail et de l’envoyer, n’est-ce pas? Et, dans le cas où l’e-mail n’est pas envoyé, est-il judicieux de tester d’autres fonctionnalités comme les brouillons, les messages supprimés, les archives, etc.? Cela signifie que vous devrez abandonner la construction sans autre validation. C’est ce qu’on appelle des tests de fumée.

L’objectif principal des tests de fumée est de tester les zones critiques et non l’application complète.

Quand effectuer des tests de fumée

  • Lorsque les développeurs fournissent une nouvelle version à l’équipe d’assurance qualité. Une nouvelle construction signifie ici lorsque la construction a de nouvelles modifications apportées par les développeurs.
  • Lorsqu’un nouveau module est ajouté à la fonctionnalité existante.

Automatisation &Test de fumée:

Il s’agit généralement du type de test qui est exécuté avant l’exécution des cas de test d’automatisation réels. Pour les organisations qui ont des tests continus intégrés, les tests de fumée sont équivalents à une installation réussie de la version pour l’exécution de scénarios de test ou l’exécution du premier scénario de test. Ce n’est donc pas un type de test délibérément automatisé, mais si l’automatisation des tests est mise en place, l’automatisation des tests ne peut fonctionner correctement qu’une fois que le logiciel a réussi les tests de fumée. Sinon, le premier cas de test qui s’exécute peut échouer.

Test de santé mentale

Le test de santé mentale est une sorte de test effectué pour vérifier si un produit logiciel fonctionne correctement lorsqu’un nouveau module ou une nouvelle fonctionnalité est implémenté sur un produit existant. Le test de santé mentale est une technique de test de logiciel qui effectue une évaluation rapide de la qualité de la version du logiciel pour déterminer si elle est éligible à d’autres séries de tests ou non.

Les tests de santé mentale sont généralement effectués après la réception d’une version logicielle assez stable ou parfois lorsqu’une version logicielle peut avoir subi des modifications mineures du code ou des fonctionnalités. Il décide si des tests de bout en bout d’un produit logiciel doivent être effectués ou non.

Le test de santé mentale est également un test de niveau de surface qui aide à décider si la version logicielle est suffisamment bonne pour passer au niveau de test suivant.

Pourquoi effectuer des tests de santé mentale

  • Pour vérifier et valider la conformité des fonctionnalités et fonctionnalités nouvellement ajoutées dans le code existant.
  • Pour s’assurer que les modifications introduites n’affectent pas les autres fonctionnalités existantes du produit.
  • Pour décider d’autres tests peuvent être reportés ou non.

Quand effectuer un test de santé mentale

  • La génération est reçue après de nombreuses régressions ou s’il y a un changement mineur dans le code.
  • La construction est reçue après la correction d’un bogue.
  • Juste avant le déploiement en production.

Automatisation &Tests de santé mentale:

Considérant que les tests de santé mentale sont considérés comme un sous-ensemble des tests de régression, ce sont les cas de test qui peuvent être automatisés. Une approche recommandée consiste à exécuter ces cas de test avant d’exécuter la suite complète de tests de régression. L’avantage est que s’il y a des erreurs dans les cas de test de santé mentale, les erreurs peuvent être signalées le plus tôt possible.

Test de régression

Le test de régression consiste à vérifier « les corrections de bogues ou toute modification de l’exigence” et à s’assurer qu’elles n’affectent pas les autres fonctionnalités de l’application. Les tests de régression sont efficaces sur l’automatisation et sont généralement effectués après que certaines modifications ont été apportées à la version logicielle après des modifications des exigences ou des corrections de bugs.

Une fois le test de santé mentale de la fonctionnalité modifiée terminé, toutes les fonctionnalités impactées de l’application nécessitent un test complet. C’est ce qu’on appelle le test de régression.

Chaque fois que des corrections de bogues sont effectuées dans le logiciel existant, certains scénarios de test doivent être exécutés, pour vérifier les corrections de bogues. En plus de ceux-ci, l’équipe d’assurance qualité doit également vérifier les zones touchées, en fonction des modifications du code. Dans les tests de régression, tous ces scénarios de test devront être exécutés, pour prendre en charge les fonctionnalités associées.

Quand effectuer des tests de régression

  • Après la modification du code en fonction des modifications requises
  • Après l’ajout de nouvelles fonctionnalités à l’application
  • Après l’intégration de certaines corrections de bogues dans la construction

Automatisation &Tests de régression :

Les cas de test de régression sont en fait les cas de test idéaux pour l’automate. Habituellement, lorsqu’une organisation démarre l’automatisation, ce sont les cas de test qui sont automatisés en premier. Si les tests de régression sont une activité qui prend beaucoup de temps pour vos testeurs et que les mêmes cas de test sont répétés plusieurs fois, il est temps que vous commenciez également à penser à l’automatisation.

Si vous recherchez un outil qui peut vous aider à démarrer votre parcours d’automatisation, vous devez également vous assurer de choisir le bon outil. Un outil qui peut également vous apporter un retour sur investissement sur les efforts investis. Nous avons le guide qui peut vous y aider:

10 Points to Help You Choose the Right Test Automation Tool

Differences Between Smoke vs Sanity vs Regression Testing

Smoke Testing Sanity Testing Regression Testing
Performed on initial builds Performed on stable builds Performed on stable builds
To test the stability of new build Pour tester la stabilité des nouvelles fonctionnalités ou des modifications de code dans la build existante Pour tester la fonctionnalité de toutes les zones affectées après de nouvelles fonctionnalités /modifications de code dans la build existante
Couvre de bout en bout les fonctionnalités de base Couvre les fonctionnalités de base Couvre certains modules, dans lesquels des modifications de code ont été apportées Couvre les tests détaillés ciblant toutes les zones affectées après l’ajout de nouvelles fonctionnalités
Exécuté par des testeurs & parfois aussi par des développeurs Exécuté par des testeurs Exécuté par des testeurs, principalement via l’automatisation
Une partie des tests de base Une partie des tests de régression Les tests de régression sont un super ensemble de tests de fumée et de santé mentale
Effectués généralement chaque fois qu’il y a une nouvelle version Prévu quand il n’y en a pas assez temps de test approfondi Généralement effectué, lorsque les testeurs ont suffisamment de temps

Points clés

  • Les tests de fumée et de santé mentale aident l’équipe d’assurance qualité à gagner du temps en testant rapidement pour s’assurer qu’une application fonctionne correctement ou non. En outre, il garantit que le produit est éligible à des tests supplémentaires. Alors que les tests de régression aident à renforcer la confiance quant à la qualité du logiciel après un changement particulier. Surtout, que les changements de code n’affectent pas les domaines connexes.
  • Les tests de fumée sont effectués à la fois par l’équipe de développement ou par l’équipe d’assurance qualité et peuvent être considérés comme un sous-ensemble de tests rigoureux. Alors que les deux tests de régression Sanity & sont effectués uniquement par l’équipe d’assurance qualité. En outre, les tests de santé mentale peuvent être considérés comme un sous-ensemble des tests d’acceptation.
  • Les tests de fumée sont exécutés au stade initial du SDLC, pour vérifier les fonctionnalités principales d’une application. Alors que les tests de régression Sanity & sont effectués au stade final du SDLC, pour vérifier les principales fonctionnalités d’une application.
  • Selon l’exigence de tester la disponibilité du temps &, l’équipe d’assurance qualité peut devoir exécuter des tests de régression sur sa version logicielle. Dans de tels cas, les tests de fumée sont d’abord exécutés, suivis des tests de santé mentale &, puis des tests de régression basés sur la disponibilité du temps sont planifiés.

En pratique, toutes les équipes d’assurance qualité doivent effectuer des tests de fumée, de Santé mentale et de régression. Tous ces types de tests ont un nombre prédéfini de cas de test qui sont exécutés plusieurs fois. Cette exécution répétitive en fait également un candidat idéal pour l’automatisation des tests. Lorsque vous recherchez une automatisation, il est recommandé d’utiliser un outil qui vous fournit un retour sur investissement sur l’automatisation dès les premières étapes. Testsigma est l’un de ces outils.

Choisissez un outil qui vous permet d’automatiser dès le jour 1