Shadow Shopper is an automated testing bot designed to validate the critical user flows of the SwagLabs e-commerce platform. It utilizes Selenium WebDriver and the Page Object Model (POM) design pattern to ensure robustness and scalability.
- Object-Oriented Design: Encapsulated logic within a
ShadowShopperclass for modularity. - Dynamic Waits: Replaced brittle
time.sleep()calls withWebDriverWaitandExpectedConditions(EC) to handle network variability. - End-to-End Workflow: Automates the entire user journey: Login -> Inventory Selection -> Cart Management -> Checkout -> Verification.
- Self-Validating: Includes internal assertions to verify "Order Complete" status automatically.
- Language: Python 3.10+
- Library: Selenium WebDriver
- Pattern: Object-Oriented Programming (OOP)
- Tools: VS Code, Git
- Clone the repository:
git clone [https://github.com/marcuslazell/shadowshopper.git](https://github.com/marcuslazell/shadowshopper.git)
- Install dependencies:
pip install selenium
- Run the bot:
python main.py
- Feb 2026: Refactored from linear script to OOP Class structure.
- Feb 2026: Implemented Explicit Waits for element visibility.