Sobes.tech
Middle

Šta se dešava sa testovima prilikom prelaska između verzija ili okruženja?

sobes.tech АИ

Одговор од АИ

Postoji potreba za prilagođavanjem testova na promene.

Ključne aktivnosti:

  1. Analiza promena: Proučavanje Release Notes, dokumentacije i specifikacija radi razumevanja novina, ispravki i uklonjenih funkcija.
  2. Regresiono testiranje: Izvođenje postojećih testova radi provere stabilnosti osnovne funkcionalnosti koja nije menjana.
  3. Ažuriranje testova:
    • Test slučajevi: Ažuriranje koraka, očekivanih rezultata, preduslova u skladu sa novom logikom. Dodavanje novih test slučajeva za pokrivanje nove funkcionalnosti. Uklanjanje zastarelih.
    • Automatizovani testovi:
      • Ažuriranje lokatora elemenata ako se struktura UI promenila.
      • Izmena logike testova u skladu sa novom poslovnom logikom.
      • Dodavanje novih automatizovanih testova.
      • Arhiviranje ili brisanje neaktuelnih testova.
    • Test podaci: Ažuriranje ili kreiranje nove generacije podataka u skladu sa zahtevima novog izdanja ili okruženja.
  4. Podešavanje testnog okruženja: Konfiguracija okruženja (serveri, baza podataka, spoljne integracije) u skladu sa zahtevima nove verzije.
  5. Izvođenje testova: Pokretanje ažuriranog skupa testova na novoj verziji ili u novom okruženju.
  6. Analiza rezultata: Istraživanje neuspešnih testova, identifikacija root uzroka, evidentiranje defekata.
  7. Izveštavanje: Sastavljanje izveštaja o rezultatima testiranja, statusu test slučajeva i defekata.

Prilikom prelaska između okruženja (Dev -> Stage -> Prod), glavni fokus je na proveri stabilnosti, performansi i integracija u uslovima što najbližim produkciji. Testovi treba da budu environment-agnostic, koliko je moguće.

Prilikom prelaska između verzija (v1.0 -> v1.1), fokus se premešta na testiranje nove funkcionalnosti, proveru ispravki i regresiju, kako bi se osiguralo da promene nisu pokvarile postojeće funkcionalnosti.

Primer prilagođavanja automatizovanog testa:

# Stari kod (v1.0)
# Prelazak na stranicu liste proizvoda
driver.find_element(By.CSS_SELECTOR, ".products-link").click()

# Novi kod (v1.1) - promenjen lokator i dodat filter po kategoriji
# Prelazak na stranicu proizvoda i primena filtera
driver.find_element(By.XPATH, "//nav/a[text()='Katalog']").click()
driver.find_element(By.ID, "category-filter").send_keys("Elektronika")