Python мануфактураJavaDesign Patterns для автоматизаторів

Терміни, нюанси та джерела

Python мануфактура · Програма курсу · 0:00–0:33

Теми мінікурсу

Модуль послідовно охоплює типи даних, оператори, умови, цикли, comprehensions, функції, файли, exceptions, модулі, ООП, type hints, pytest та environment variables. Це базові конструкції, які автоматизатор зустрічає в UI- й API-тестах.

0 вступ в заняття →

Python мануфактура · Програма курсу · 0:00–1:02

Помилки parsing і зовнішні дані

Перетворення `int("not-a-number")` спричиняє `ValueError`. Подібні помилки виникають із CSV, UI text або API payload, коли фактичний формат не відповідає очікуваному. Fallback на `0` чи інше значення допустимий лише коли це частина явного контракту; інакше він приховає дефект даних.

8 ексепшени →

Python мануфактура · Програма курсу · 5:33–6:57

`else`, custom exceptions і межі обробки

`else` після `try/except` виконується лише коли exception не було; `finally` — завжди. Custom exception доречний, коли domain-specific failure повторюється й потребує власного змісту. Обробка має або відновити коректний стан, або завершити тест із точним сигналом — не просто продовжити виконання після невідомої помилки.

8 ексепшени →

Python мануфактура · Програма курсу · 7:30–8:04

`match/case` і вибір простої конструкції

`match/case` зручний для багатьох чітких варіантів на кшталт окремих auth codes, але для двох-трьох ranges звичайний `if/elif` часто простіший. Розширені приклади пропонують додати assertions і exceptions та подивитися, як змінюється failure output.

3 умови →

Python мануфактура · Програма курсу · 30:00–35:00

`WebDriverWait` та `expected_conditions`

Явне очікування створюється як `WebDriverWait(driver, timeout, poll_frequency=...)`. Timeout задає верхню межу, а `poll_frequency` — інтервал повторної перевірки. Значення треба підбирати без надмірного polling: частіші запити не лікують повільний продукт і можуть додати зайве навантаження браузеру. Метод `until()` приймає конкретну умову з `selenium.webdriver.support.expected_conditions`, яку часто імпортують як `EC`. Серед типових умов: `visibility_of_element_located`, `element_to_be_clickable`, presence, invisibility і selected state. До `WebDriverWait` можна передати ignored exceptions, наприклад `NoSuchElementException` або `StaleElementReferenceException`. Проте це працює лише тоді, коли пошук виконується всередині condition; якщо `find_element()` викликати раніше під час формування аргументу, exception виникне ще до старту polling.

1. Selenium початок, основи, фікстури →
Запитати в чаті про «exceptions» →