Sobes.tech
Junior

Hogyan írjunk smoke-tesztet?

sobes.tech MI

Válasz az MI-től

Duman tesztek. Az alkalmazás fő és kritikus funkcióit azonosítjuk. Egy minimális tesztkészletet hozunk létre ezeknek a funkcióknak a "felületi" működésének ellenőrzésére. Automatikusan futtatjuk őket minden build vagy kiadás után gyors végrehajtás érdekében.

Példa a duman teszt szerkezetére (pseudokód):

# 1. számú teszt: A felhasználó sikeres bejelentkezésének ellenőrzése

def test_sikeres_bejelentkezes():
    # Navigálás a bejelentkezési oldalra
    navigate_to("https://mysite.com/login")
    # Helyes adatok megadása
    enter_username("user@example.com")
    enter_password("password123")
    # Kattintás a "Bejelentkezés" gombra
    click_button("Bejelentkezés")
    # Ellenőrizze, hogy megjelent-e egy elem vagy URL, ami a sikeres bejelentkezést jelzi (pl. profil link)
    assert element_is_present("//a[@href='/profile']") or url_is("https://mysite.com/dashboard")

# 2. számú teszt: Termék hozzáadása a kosárhoz

def test_termek_hozzaad():
    # Navigálás a termék oldalra
    navigate_to("https://mysite.com/products/item1")
    # Kattintás a "Hozzáadás a kosárhoz" gombra
    click_button("Hozzáadás a kosárhoz")
    # Ellenőrizze, hogy a kosárban lévő termékek száma frissült
    assert get_cart_item_count() == 1

# És így tovább más kritikus funkciókra (regisztráció, fizetés, keresés stb.)

A smoke tesztek írásakor figyelembe veendő pontok:

  • Rövid és gyors: A teszteknek a lehető leggyorsabban kell futniuk.
  • A mag fő funkcióira fókuszálva: Csak az "életbevágó" funkciókat teszteljük.
  • Stabilitás: A teszteknek ellenállónak kell lenniük a kisebb változásokkal szemben, ha azok nem befolyásolják a kritikus logikát.
  • Automatizálás: A smoke tesztek többsége automatizált a CI/CD pipeline-okba való integrációhoz.
  • Egyszerűség: A tesztek logikájának érthetőnek és könnyen karbantarthatónak kell lennie.