Sobes.tech
Junior — Middle

Quels types d'attentes pouvez-vous énumérer dans le contexte du développement logiciel?

sobes.tech IA

Réponse de l'IA

Dans le contexte du développement logiciel, plusieurs types d'attentes (expectations) sont distingués, notamment dans les tests et l'automatisation :

  • Attentes strictes (Hard waits) — temps d'attente fixe, par exemple, sleep(5). Utilisées rarement, car inefficaces et ralentissent les tests.
  • Attentes explicites (Explicit waits) — attendre une condition ou un événement spécifique avec un délai d'attente. Par exemple, attendre qu'un élément apparaisse sur la page.
  • Attentes implicites (Implicit waits) — configurer un temps d'attente pour la recherche d'éléments, durant lequel le driver tentera de manière répétée pendant ce délai.
  • Attentes basées sur des événements (Event-based waits) — attendre qu'un événement spécifique se produise, comme la fin du chargement d'un fichier.

Exemple d'attente explicite en Python avec 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')))