Сравнение 1: найти и кликнуть кнопку
🟡 Selenium
btn = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable(
(By.CSS_SELECTOR, "button.login")
)
)
btn.click()
🟢 Playwright
page.get_by_role(
"button", name="Login"
).click()
Сравнение 2: проверить текст
🟡 Selenium
el = driver.find_element(By.CLASS_NAME, "msg")
assert el.text == "Готово" # снимок, может флакать
🟢 Playwright
expect(page.locator(".msg")).to_have_text("Готово")
# ждёт до таймаута, пока текст не совпадёт
Сравнение 3: выбрать N-й элемент списка
🟡 Selenium
items = driver.find_elements(By.CSS_SELECTOR, ".item")
items[1].click()
assert len(items) == 5
🟢 Playwright
items = page.locator(".item")
items.nth(1).click()
expect(items).to_have_count(5)
⚠️ Сравнение показывает разницу подходов, а не «что лучше». В реальном проекте используйте принятый в команде инструмент.