Middle
Mis juhtub testidega versioonide või keskkondade vahetamisel?
sobes.tech AI
Vastus AI-lt
On vajadus testid muudatustega kohandada.
Peamised tegevused:
- Muudatuste analüüs: Uuenduste märkuste, dokumentatsiooni ja spetsifikatsioonide uurimine, et mõista uuendusi, parandusi ja eemaldatud funktsioone.
- Regressioonitestimine: olemasolevate testide läbiviimine, et kontrollida põhifunktsionaalsuse stabiilsust, mis pole muutunud.
- Testide uuendamine:
- Testjuhtumid: sammude, oodatavate tulemuste, eeltingimuste uuendamine vastavalt uuele loogikale. Uute testjuhtumite lisamine uue funktsionaalsuse katmiseks. Vanade eemaldamine.
- Automatiseeritud testid:
- Elementide lokaliseerijate uuendamine, kui UI struktuur on muutunud.
- Testide loogika: muutmine vastavalt uuele äriloogikale.
- Uute automatiseeritud testide lisamine.
- Vanade testide arhiveerimine või kustutamine.
- Testandmed: uute andmete genereerimine või uuendamine vastavalt uuele versioonile või keskkonnale.
- Testkeskkonna seadistamine: Keskkonna (serverid, andmebaasid, kolmanda osapoole integratsioonid) konfiguratsioon vastavalt uue versiooni nõuetele.
- Testide käivitamine: uuendatud testide komplekti käivitamine uues versioonis või keskkonnas.
- Tulemustestide analüüs: ebaõnnestunud testide uurimine, põhjusliku põhjuse leidmine, defektide registreerimine.
- Aruandlus: testimise tulemuste, testjuhtumite ja defektide aruannete koostamine.
Kui tehakse keskkondade vahet (Dev -> Stage -> Prod), keskendutakse peamiselt stabiilsuse, jõudluse ja integratsioonide kontrollile, võimalikult lähedal tootmistingimustele. Testid peaksid olema environment-agnostic, nii palju kui võimalik.
Kui tehakse versioonide vahet (v1.0 -> v1.1), keskendutakse uue funktsionaalsuse, paranduste ja regressiooni testimisele, et veenduda, et muudatused ei ole olemasolevat rikkunud.
Automatiseeritud testi kohandamise näide:
# Vana kood (v1.0)
# Liikumine toote nimekirja lehele
driver.find_element(By.CSS_SELECTOR, ".products-link").click()
# Uus kood (v1.1) - muutunud lokalisaator ja lisatud kategooria filter
# Liikumine toote lehele ja filtri rakendamine
driver.find_element(By.XPATH, "//nav/a[text()='Kataloog']").click()
driver.find_element(By.ID, "category-filter").send_keys("Elektronika")