Junior — Middle
Koje tipove očekivanja možeš navesti u kontekstu razvoja softvera?
sobes.tech АИ
Одговор од АИ
У контексту развоја софтвера, издваја се неколико типова очекивања (expectations), посебно у тестирању и аутоматизацији:
- Тврда очекивања (Hard waits) — фиксно време чекања, на пример,
sleep(5). Ретко се користе, јер су неефикасна и успоравају тестове. - Јасна очекивања (Explicit waits) — чекање на одређено стање или догађај са временским ограничењем. На пример, чекање да се појави елемент на страници.
- Намештена очекивања (Implicit waits) — подешавање времена за претрагу елемената, током кога ће драйвер више пута покушавати.
- Очекујења заснована на догађајима (Event-based waits) — чекање на одређени догађај, као што је завршетак учитавања фајла.
Пример јасног чекања у Python са Selenium:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, 'myElement')))