Sobes.tech
Junior

Come scrivere un test di fumata?

sobes.tech AI

Risposta dell'AI

Test di fumata. Identifichiamo le funzioni principali e critiche dell'applicazione. Creiamo un set minimo di test per verificare il funzionamento "superficiale" di queste funzioni. Automatizziamo questi test per un'esecuzione rapida dopo ogni build o rilascio.

Esempio di struttura di test di fumata (pseudo-codice):

# Test n°1: Verifica del login utente riuscito sul sito

def test_login_riuscito():
    # Naviga alla pagina di login
    navigate_to("https://mysite.com/login")
    # Inserisci credenziali corrette
    enter_username("user@example.com")
    enter_password("password123")
    # Clicca sul pulsante "Accedi"
    click_button("Accedi")
    # Verifica la presenza di un elemento o URL che indica login riuscito (ad esempio, link al profilo)
    assert element_is_present("//a[@href='/profile']") or url_is("https://mysite.com/dashboard")

# Test n°2: Verifica aggiunta di un articolo al carrello

def test_aggiungi_articolo_al_carrello():
    # Naviga alla pagina del prodotto
    navigate_to("https://mysite.com/products/item1")
    # Clicca sul pulsante "Aggiungi al carrello"
    click_button("Aggiungi al carrello")
    # Verifica che il contatore degli articoli nel carrello sia stato aggiornato
    assert get_cart_item_count() == 1

# E così via per altre funzioni critiche (registrazione, pagamento, ricerca, ecc.)

Punti chiave nella scrittura di test di fumata:

  • Breve e veloce: I test devono essere eseguiti il più rapidamente possibile.
  • Focus sul core: Vengono testate solo le funzioni "essenziali".
  • Stabilità: I test devono essere resistenti a modifiche minori che non influenzano la logica critica.
  • Automazione: La maggior parte dei test di fumata sono automatizzati per l'integrazione nelle pipeline CI/CD.
  • Semplicità: La logica dei test deve essere comprensibile e facilmente manutenibile.