Junior — Middle
Welke soorten verwachtingen kun je noemen in de context van softwareontwikkeling?
sobes.tech AI
Antwoord van AI
In de context van softwareontwikkeling worden verschillende soorten verwachtingen (expectations) onderscheiden, vooral bij testen en automatisering:
- Harde wachttijden (Hard waits) — vaste wachttijd, bijvoorbeeld
sleep(5). Worden zelden gebruikt omdat ze inefficiënt zijn en de tests vertragen. - Expliciete wachttijden (Explicit waits) — wachten op een bepaalde voorwaarde of gebeurtenis met een timeout. Bijvoorbeeld wachten tot een element op de pagina verschijnt.
- Impliciete wachttijden (Implicit waits) — instellen van een wachttijd voor het zoeken naar elementen, waarbij de driver herhaaldelijk probeert binnen die tijd.
- Gebeurtenis-gebaseerde wachttijden (Event-based waits) — wachten tot een specifieke gebeurtenis plaatsvindt, zoals het voltooien van een bestand upload.
Voorbeeld van een expliciete wacht in Python met 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')))