This case study covers the validation of the Settlement Request Flow feature on the Merchant Dashboard, which allows merchants to request settlements for their account balances.
All detailed test cases — including scenarios, steps, expected results, and mapping to user stories — have been compiled into an Excel document.
📂 Figma Design : https://www.figma.com/design/m3B7xbhltcEReaKVbG1ixY/Payment-Aggregator---Settlement-Request-Flow-Testing?node-id=0-1&p=f
📂 Test Case File : https://docs.google.com/spreadsheets/d/1wup5dPOytKZ6LsreFH9bVlZtBeQbFaFA/edit?usp=sharing&ouid=112773817720273419085&rtpof=true&sd=true
This project contains automated test scripts for the DemoQA Bookstore application hosted at https://demoqa.com/books. The tests ensure that the application's features are visually correct, functional, and properly integrated.
📂 Test Case File : https://docs.google.com/spreadsheets/d/1nOL6KFqEghnvlilJVY2OgLtzBJAK_8fnqX2l2hczHqQ/edit?usp=sharing
📂 Video Demo : https://drive.google.com/drive/folders/1UthVQlk82dznLtrb6GKr96jHIsLpDfyi?usp=sharing
To execute a specific test class, use the -Dtest option:
mvn test -Dtest="ClassName"
For example, to run each class on this project:
mvn test -Dtest=DeleteAccountTest
mvn test -Dtest=DeleteBookTest
mvn test -Dtest=LoginTest
mvn test -Dtest=LogoutTest
mvn test -Dtest=RegisterAccountTest
mvn test -Dtest=SearchBookTest
mvn test -Dtest=SearchBookTest,RegisterAccountTest,LogoutTest,LoginTest,DeleteBookTest,DeleteAccountTest
To execute a specific test method within a class:
mvn test -Dtest="ClassName#methodName"
For example, to run the userCanSearchBook method in the SearchBookTest class:
mvn test -Dtest="SearchBookTest#userCanSearchBook"
- Delete Account
- Delete Book from Profile
- Login Functionality
- Logout Functionality
- Register New User
- Search Functionality
- Programming Language: Java
- Automation Framework: Selenium WebDriver
- Environment Management: Dotenv
- Test Framework: TestNG
- Build Tool: Maven
- Browser: Google Chrome (via WebDriverManager)
To ensure that the bookstore application at https://demoqa.com/books is visually correct, functional, and properly integrated by automating test cases for various features.
- User can delete account successfully. (Implemented)
- User can delete a specific book from their profile. (Not Implemented)
- User can delete all books from their profile. (Not Implemented)
- User can delete all books from their profile when book is empty. (Implemented)
- User can log in with valid credentials. (Implemented)
- User cannot log in with invalid username/password. (Implemented)
- Error message is displayed for invalid credentials. (Implemented)
- User cannot log in with empty username or password fields. (Implemented)
- User can log out successfully. (Implemented)
- User cannot access profile page after logging out. (Implemented)
- User can register with valid details. (Not Implemented)
- User is redirected to the login page after successful registration. (Not Implemented)
- Error message is displayed for invalid or missing registration details. (Implemented)
- User cannot register without verifying the reCAPTCHA. (Implemented)
- User can search for a book by title. (Implemented)
- Search results are case-insensitive. (Implemented)
- No results are displayed for invalid search queries. (Implemented)
- Environment Variables (stored in
.envfile):username,passwordfor login.firstName,lastName,usernameDelete,passwordDeletefor registration and deletion tests.
- Search Queries:
- Valid:
"Git Pocket Guide","Learning JavaScript". - Invalid:
"NonExistentBook123".
- Valid:
- Setup:
- Initialize WebDriver and navigate to the application.
- Load environment variables for test data.
- Test Execution:
- Execute test cases using TestNG with priority-based execution.
- Validate UI elements, functionality, and error handling.
- Teardown:
- Clear cookies and close the browser after each test.
- Generate test reports using TestNG.
- Log errors and failed test cases for debugging.