Sobes.tech
Junior — Middle

Ի՞նչ տեսակների սպասումներ կարող եք նշել ծրագրային ապահովման զարգացման համատեքստում։

sobes.tech AI

Պատասխան AI-ից

Ծրագրային ապահովման զարգացման համատեքստում տարբեր տեսակի սպասումներ (expectations) առանձնացվում են, հատկապես թեստավորման և ավտոմատացման ժամանակ.

  • Քոշտ սպասումներ (Hard waits) — ֆիքսված սպասման ժամանակ, օրինակ, sleep(5). Դրանք հազվադեպ են օգտագործվում, քանի որ անարդյունավետ են և դանդաղեցնում են թեստերը.
  • Արագ սպասումներ (Explicit waits) — սպասում որոշակի պայման կամ իրադարձության հետ ժամանակային սահմանափակմամբ: Օրինակ, սպասում էջում տարրին հայտնվելու համար:
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')))
  • Անհատական սպասումներ (Implicit waits) — կարգավորում է սպասման ժամանակը տարրեր որոնելու համար, որի ընթացքում վարորդը կրկնակի փորձեր կկատարի:

  • Իրադարձության վրա հիմնված սպասումներ (Event-based waits) — սպասում է որոշակի իրադարձության, օրինակ, ֆայլի բեռնման ավարտին:

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')))