How christianaa/selenium-python-example works
This is a small Selenium UI-testing example using the Page Object Model. The documented workflow runs pytest tests that navigate to DuckDuckGo, perform a search, and check that results appear. The sampled SearchPage implements navigation and search/result waiting; BasePage wraps basic WebDriver operations, and locators define the page selectors. The README also documents configurable browser preferences, but the configuration wiring and test implementation were not sampled, so those links remain unverified.
Main entry points: search_page.py Search page · base_page.py Base page · test_search.py Pytest tests · config.yaml Browser preferences
Components 7
Test workflow
- Pytest tests
tests/test_search.py
Page objects
- Search page
pages/search_page.py - Base page
pages/base_page.py
Page data
- Search locators
data/locators.py - Browser preferences
data/config.yaml
Other components
- Selenium WebDriver
- DuckDuckGo
Connections 7
- Pytest tests → Search page: runs search
README.md - Search page → Base page: inherits from
pages/search_page.py - Search page → Search locators: uses selectors
pages/search_page.py - Search page → Selenium WebDriver: drives browser
pages/search_page.py - Base page → Selenium WebDriver: navigates
pages/base_page.py - Search page → DuckDuckGo: opens and searches
pages/search_page.py - Browser preferences → Search page: configures browser
README.md