Selenium е популярен инструмент с отворен код за автоматизирано тестване на уеб приложения. С него можеш да симулираш действия на потребител в браузър – като кликове, попълване на формуляри, навигация между страници и проверка на съдържание – така, както би го направил реален човек.
Основни компоненти на Selenium:
1. Selenium WebDriver
- Основният инструмент за автоматизиране на браузъри.
- Позволява писане на тестове на езици като Java, Python, C#, JavaScript и др.
- Работи с браузъри като Chrome, Firefox, Edge, Safari и др.
2. Selenium IDE
- Лесен за използване плъгин за браузъра (Chrome/Firefox).
- Позволява запис и възпроизвеждане на тестове без писане на код – подходящ за начинаещи.
3. Selenium Grid
- Позволява едновременна работа с много браузъри и машини.
- Полезен при тестване на големи приложения и CI/CD процеси (например с Jenkins).
Какво можеш да тестваш със Selenium?
- Дали бутон или линк работи правилно
- Попълване и валидиране на формуляри
- Поведение при различни резолюции и браузъри
- Поток на потребителя (user journey)
- Интеграции с други системи (логини, API и др.)
Пример с Python + WebDriver:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://example.com")
search_box = driver.find_element(By.NAME, "q")
search_box.send_keys("Selenium")
search_box.submit()
print(driver.title)
driver.quit()
Защо да използваш Selenium?
- Поддържа повечето популярни езици за програмиране
- Работи с реални браузъри
- Идеален за end-to-end (E2E) тестове
- Може да се интегрира с CI/CD платформи (Jenkins, GitLab, GitHub Actions и др.)
Ограничения
- Не поддържа настолни или мобилни приложения извън браузъра
- Тестовете може да са по-бавни спрямо headless решения
- Изисква поддръжка при промени в DOM структурата