Qu'est-ce que le test de fumée ?

Qu'est-ce que le test de fumée

Test de fumée est un processus de test logiciel qui détermine si la version logicielle déployée est stable ou non. Les tests de fumée sont une confirmation pour l'équipe d'assurance qualité de procéder à d'autres tests logiciels. Il consiste en un ensemble minimal de tests exécutés sur chaque version pour tester les fonctionnalités du logiciel. Les tests de fumée sont également appelés « tests de vérification de construction » ou « tests de confiance ».

En termes simples, les tests de fumée signifient vérifier que les fonctionnalités importantes fonctionnent et qu'il n'y a aucun obstacle dans la version en cours de test. Il s'agit d'un mini test de régression rapide des fonctionnalités majeures. Il s'agit d'un test simple qui montre que le produit est prêt à être testé. Cela permet de déterminer si la version est défectueuse et de faire de tout test supplémentaire une perte de temps et de ressources.

Comparer Tests de fumée et de santé mentale

Quand faisons-nous des tests de fumée

Les tests de fumée sont effectués chaque fois que les nouvelles fonctionnalités du logiciel sont développées et intégrées à la version existante déployée dans un environnement d'assurance qualité/stade. Il garantit que toutes les fonctionnalités critiques fonctionnent correctement ou non.

Test de fumée

Dans cette méthode de test, l'équipe de développement déploie la version en QA. Un sous-ensemble de scénarios de test est sélectionné, puis les testeurs exécutent des scénarios de test sur la version. L'équipe d'assurance qualité teste l'application par rapport aux fonctionnalités critiques. Ces séries de cas de test sont conçues pour exposer les erreurs en cours de construction. Si ces tests sont réussis, l'équipe d'assurance qualité continue avec Essais fonctionnels.

Tout échec indique la nécessité de renvoyer le système à l'équipe de développement. Chaque fois qu'il y a un changement dans la construction, nous effectuons des tests de fumée pour garantir la stabilité.

Exemple: -Un nouveau bouton d'inscription est ajouté dans la fenêtre de connexion et la build est déployée avec le nouveau code. Nous effectuons des tests de fumée sur une nouvelle construction.

Les tests de fumée qualifient la construction pour des tests formels supplémentaires. L’objectif principal des tests de fumée est de détecter précocement les problèmes majeurs. Les tests de fumée sont conçus pour démontrer la stabilité du système et sa conformité aux exigences. Une build comprend tous les fichiers de données, bibliothèques, modules réutilisables et composants d'ingénierie requis pour implémenter une ou plusieurs fonctions du produit.

Que se passe-t-il si nous ne effectuons pas de tests de fumée

Si nous n'effectuons pas de tests de fumée dès les premières étapes, des défauts peuvent survenir plus tard et cela peut s'avérer coûteux. Et le Défaut trouvés dans les étapes ultérieures peuvent être des freins au spectacle lorsqu'ils peuvent affecter la publication des livrables.

Qui effectuera les tests de fumée

Après avoir publié la version dans l'environnement QA, les tests de fumée sont effectués par les ingénieurs QA/responsable QA. Chaque fois qu'il y a une nouvelle version, l'équipe d'assurance qualité détermine les principales fonctionnalités de l'application pour effectuer des tests de fumée. L'équipe d'assurance qualité vérifie les obstacles dans l'application en cours de test.

Tests effectués dans un environnement de développement sur le code pour garantir l'exactitude de l'application avant de publier la version au contrôle qualité, c'est ce qu'on appelle les tests de santé mentale. Il s’agit généralement de tests étroits et approfondis. Il s'agit d'un processus qui vérifie que l'application en cours de développement répond à ses exigences fonctionnelles de base.

Les tests d'intégrité déterminent l'achèvement de la phase de développement et prennent la décision de réussir ou non le produit logiciel pour une phase de tests plus approfondie.

Pourquoi effectuons-nous des tests de fumée ?

Les tests de fumée jouent un rôle important dans le développement de logiciels car ils garantissent l'exactitude du système dès les premières étapes. Grâce à cela, nous pouvons économiser les efforts de test. En conséquence, les tests de fumée mettent le système en bon état. Une fois les tests de fumée terminés, nous commençons seulement les tests fonctionnels.

  • Tous les obstacles de la construction seront identifiés en effectuant des tests de fumée.
  • Les tests de fumée sont effectués après la publication de la version au contrôle qualité. Grâce aux tests de fumée, la plupart des défauts sont identifiés dès les premières étapes de développement de logiciels.
  • Avec les tests de fumée, nous simplifions la détection et la correction des défauts majeurs.
  • Grâce à des tests de fumée, l'équipe d'assurance qualité peut détecter des défauts dans la fonctionnalité de l'application qui peuvent avoir été révélés par le nouveau code.
  • Les tests de fumée détectent les défauts de gravité majeurs.

1 Exemple: Fenêtre de journalisation : possibilité de passer à la fenêtre suivante avec un nom d'utilisateur et un mot de passe valides en cliquant sur le bouton Soumettre.

2 Exemple: L'utilisateur ne parvient pas à se déconnecter de la page Web.

Comment réaliser un test de fumée ?

Les tests de fumée sont généralement effectués manuellement, bien qu'il soit possible de réaliser la même chose grâce à l'automatisation. Cela peut varier d’une organisation à l’autre.

Test de fumée manuel

En général, les tests de fumée sont effectués manuellement. Les approches varient d’une organisation à l’autre. Des tests de fumée sont effectués pour garantir que la navigation dans les chemins critiques se déroule comme prévu et n'entrave pas la fonctionnalité. Une fois la version soumise au contrôle qualité, des cas de test de fonctionnalités hautement prioritaires doivent être pris en compte et testés pour détecter les défauts critiques du système. Si le test réussit, nous poursuivons les tests fonctionnels. Si le test échoue, la build est rejetée et renvoyée à l'équipe de développement pour correction. Le contrôle qualité recommence les tests de fumée avec une nouvelle version de build. Les tests de fumée sont effectués sur les nouvelles versions et seront intégrés aux anciennes versions pour maintenir l'exactitude du système. Avant d'effectuer des tests de fumée, l'équipe d'assurance qualité doit vérifier les versions de build correctes.

Test de fumée par Automation

Tests d'automatisation est utilisé pour Les tests de régression. Cependant, nous pouvons également utiliser un ensemble de cas de tests automatisés pour exécuter Smoke Test. À l'aide de tests d'automatisation, les développeurs peuvent vérifier la build immédiatement, chaque fois qu'une nouvelle build est prête à être déployée.

Au lieu de procéder à des tests répétés manuellement chaque fois que la nouvelle version du logiciel est déployée, des cas de tests de fumée enregistrés sont exécutés sur la version. Il vérifie si les principales fonctionnalités fonctionnent toujours correctement. Si le test échoue, ils peuvent alors corriger la version et la redéployer immédiatement. Ainsi, nous pouvons gagner du temps et garantir une construction de qualité de l’environnement d’assurance qualité.

À l'aide d'un outil automatisé, l'ingénieur de test enregistre toutes les étapes manuelles effectuées dans la version logicielle.

Cycle de test de fumée

L'organigramme ci-dessous montre comment les tests de fumée sont exécutés. Une fois la version déployée en QA et les tests de fumée réussis, nous procédons aux tests fonctionnels. Si le test de fumée échoue, nous quittons les tests jusqu'à ce que le problème dans la version soit résolu.

Cycle de test de fumée
Cycle de test de fumée

Avantages des tests de fumée

Voici quelques avantages répertoriés pour les tests de fumée.

  • Tests faciles à réaliser
  • Les défauts seront identifiés dès les premiers stades.
  • Améliore la qualité du système
  • Réduit le risque
  • Les progrès sont plus faciles d’accès.
  • Gain de temps et d'efforts de test
  • Détection facile des erreurs critiques et correction des erreurs.
  • Ça court vite
  • Minimise les risques d’intégration

Exemples de cas de test de fumée

T.ID SCÉNARIOS DE TEST DESCRIPTION ÉTAPE DE TEST RÉSULTAT ATTENDU RÉSULTAT ACTUEL STATUT
1 Identifiants de connexion valides Testez la fonctionnalité de connexion de l'application Web pour vous assurer qu'un utilisateur enregistré est autorisé à se connecter avec son nom d'utilisateur et son mot de passe. 1.Lancez l'application
2.Naviguez sur la page de connexion
3.Entrez un nom d'utilisateur valide
4.Entrez un mot de passe valide
5.Cliquez sur le bouton de connexion
La connexion devrait être un succès comme prévu Passé
2 Ajout de fonctionnalités d'élément Possibilité d'ajouter un article au panier 1.Sélectionnez la liste des catégories
2.Ajoutez l'article au panier
L'article devrait être ajouté au panier L'article n'est pas ajouté au panier Échoué
3 Fonctionnalité de déconnexion Vérifier la fonctionnalité de déconnexion 1. sélectionnez le bouton de déconnexion L'utilisateur doit pouvoir se déconnecter. L'utilisateur ne peut pas se déconnecter Échoué

Pour aller plus loin

En génie logiciel, les tests de fumée doivent être effectués sans faute sur chaque version, car ils permettent de détecter les défauts dès les premiers stades. L'activité de test de fumée est la dernière étape avant que la construction du logiciel n'entre dans la phase système. Des tests de fumée doivent être effectués sur chaque version soumise à des tests. Cela s'applique aux nouveaux développements et aux versions majeures et mineures du système.

Avant d'effectuer des tests de fumée, l'équipe d'assurance qualité doit s'assurer de la version correcte de l'application testée. C'est un processus simple qui prend un minimum de temps pour tester la stabilité de l'application.

Les tests de fumée peuvent minimiser les efforts de test et améliorer la qualité de l'application. Les tests de fumée peuvent être effectués manuellement ou automatiquement en fonction du client et de l'organisation.