Sobes.tech
Junior

Comment écrire un test de fumée?

sobes.tech IA

Réponse de l'IA

Tests de fumée. Nous identifions les fonctions principales et critiques de l'application. Nous créons un ensemble minimal de tests pour vérifier le bon fonctionnement "superficiel" de ces fonctions. Nous les automatisons pour une exécution rapide après chaque compilation ou lancement.

Exemple de structure de test de fumée (pseudo-code):

# Test n°1 : Vérification de la connexion réussie de l'utilisateur sur le site

def test_connexion_reussie():
    # Aller à la page de connexion
    navigate_to("https://mysite.com/login")
    # Entrer les identifiants corrects
    enter_username("user@example.com")
    enter_password("password123")
    # Cliquer sur le bouton "Se connecter"
    click_button("Se connecter")
    # Vérifier la présence d'un élément ou URL indiquant une connexion réussie (par exemple, lien vers le profil)
    assert element_is_present("//a[@href='/profile']") or url_is("https://mysite.com/dashboard")

# Test n°2 : Vérification de l'ajout d'un article au panier

def test_ajouter_article_panier():
    # Aller à la page du produit
    navigate_to("https://mysite.com/products/item1")
    # Cliquer sur le bouton "Ajouter au panier"
    click_button("Ajouter au panier")
    # Vérifier que le compteur d'articles dans le panier a été mis à jour
    assert get_cart_item_count() == 1

# Et ainsi de suite pour d'autres fonctions critiques (inscription, paiement, recherche, etc.)

Points clés lors de l'écriture de tests de fumée :

  • Brièveté et rapidité : Les tests doivent s'exécuter rapidement.
  • Focus sur le noyau : Seules les fonctions "essentielles" sont vérifiées.
  • Stabilité : Les tests doivent être résistants aux changements mineurs qui n'affectent pas la logique critique.
  • Automatisation : La majorité des tests de fumée sont automatisés pour l'intégration dans les pipelines CI/CD.
  • Simplicité : La logique des tests doit être compréhensible et facile à maintenir.