This project is a Test Automation suite for the Luma eCommerce Demo Website, built using Selenium WebDriver in Java, organized with the Page Object Model (POM) design pattern, and tested using TestNG framework.
- Project Overview
- Technologies Used
- Project Structure
- Setup Instructions
- Test Scenarios Implemented
- Features Implemented
- Author
This mini-project includes 6 automated end-to-end test scenarios that simulate a user’s interaction with the Luma Demo eCommerce platform. Scenarios include registration, login, filtering products, managing wishlists, shopping carts, and verifying price sums.
- Java 17+
- Selenium WebDriver
- TestNG (for test execution)
- Page Object Model (POM)
- Maven (for dependency management)
- Screenshot capture on failure
src/
├── main/
│ └── java/
│ └── pages/ # Page Object classes for each web page
│ └── utils/ # Utility classes (e.g., wait, config, screenshots)
├── test/
│ └── java/
│ └── tests/ # TestNG test classes for each scenario
│ └── base/ # BaseTest class for setup and teardown
screenshots/ # Screenshots saved on failure
pom.xml # Maven dependencies
testng.xml # TestNG test suite
README.md
-
Clone the repository:
git clone https://github.com/rigelHadushiDev/LumaTestSuite.git
-
Open the project in IntelliJ IDEA or Eclipse.
-
Ensure Maven is installed and configured.
-
Update browser driver path in
BaseTest.javaif needed. -
Run the tests:
- From IDE using
testng.xml - Or via command line:
mvn test
- From IDE using
- Navigate to registration page
- Fill and submit the form
- Verify success message and user icon
- Sign out
- Log in with created credentials
- Verify username is shown
- Sign out
- Navigate to Women > Tops > Jackets
- Filter by color and price
- Validate displayed products match selected filters
- Remove price filter
- Add first two items to Wish List
- Verify success message and item count in My Wish List
- Add all filtered items to cart
- Verify success messages
- Navigate to cart
- Validate item price sum equals order total
- Remove all items from cart
- Verify cart is empty message
- Selenium WebDriver for browser automation
- TestNG for structured test execution
- Page Object Model for maintainable code
- Explicit waits using WebDriverWait
- Assertions for verification
- Screenshot capture on failure (saved in
screenshots/folder)
Developed by @rigelHadushiDev