Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/iamsatyamyadav/qkart_automation_project
QKart Description
https://github.com/iamsatyamyadav/qkart_automation_project
gradlew java junit locators selenium selenium-webdriver testng vscode
Last synced: about 1 month ago
JSON representation
QKart Description
- Host: GitHub
- URL: https://github.com/iamsatyamyadav/qkart_automation_project
- Owner: iamsatyamyadav
- Created: 2024-04-24T06:07:13.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-05-31T10:21:55.000Z (7 months ago)
- Last Synced: 2024-06-01T11:17:12.418Z (7 months ago)
- Topics: gradlew, java, junit, locators, selenium, selenium-webdriver, testng, vscode
- Language: Java
- Homepage: https://www.crio.do/learn/portfolio/satyam-yadav-criodo/ME_QKART_QA_V2/?edit=true
- Size: 60.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# QKART-Testing
The application under test is QKart, an e-commerce platform.## About the Project
> ***The TestNG script is designed to evaluate the functionality of a dummy e-commerce website. The script performs various tests, checking functionalities, and maintains an Excel file to store the results of Sanity and Regression testing.***
## QKart Shopping Interface (Products page)
![image](https://github.com/iamsatyamyadav/Qkart_Automation_Project/assets/103804433/d365789f-f3e3-4432-9e53-c96144331f1f)## During this project,
- Debugged failing test cases and issues with log statements
- Automated testing with selenium
- Utilised implicit and explicit waits correctly to avoid synchronisation issues
- Improved the tests with XPath
- Migrated tests to the TestNG test automation framework
- Performed Data-driven test automation with Apache POI## Modularise test code and debug issues
### Scope of Work
- Modularised existing test code for readability and to avoid code duplication
- Fixed various bugs present in the existing code base for Register and Login pages
- Used IDE debugger with breakpoints to find and resolve issues faster
### Skills used
`Java`, `Selenium`, `Locators`, `HTML`, `Developer Tools`, `XPath`, `TestNG`## Features
- Registration and login functionality testing
- Search box functionality testing
- Cart functionality testing
- Checkout functionality testing
- Contact us form functionality testing
- Advertisement functionality testing
- Privacy policy and about us functionality testing# Setup
This project requires the following software and dependencies:
- **Java JDK 17.x.x:** Ensure you have Java Development Kit version 17 or above installed. You can download it [here](https://www.oracle.com/java/technologies/javase-downloads.html).
- **Gradle 8.x.x:** Make sure you have Gradle version 8 or above installed. You can download it [here](https://gradle.org/install/).
- **WebDriverManager:** To manage WebDriver binaries automatically. Add the WebDriverManager dependency to your project. More information can be found [here](https://github.com/bonigarcia/webdrivermanager).
- **Selenium:** The project relies on Selenium for automated testing. Ensure you have the latest version of Selenium WebDriver added to your dependencies. Details can be found [here](https://www.selenium.dev/downloads/).
- **TestNG Framework:** This project uses TestNG for test execution and reporting. Add the TestNG dependency to your project. Information can be found [here](https://testng.org/doc/).
- **Apache POI:** Used for updating Excel files. Add the Apache POI dependency to your project. Details can be found [here](https://poi.apache.org/).
### Example Gradle Dependency Configuration:
```gradle
dependencies {
testImplementation 'org.testng:testng:7.5'
// This dependency is used by the application.
implementation 'com.google.guava:guava:31.1-jre'
implementation group: 'io.github.bonigarcia', name: 'webdrivermanager', version: '5.6.2'
implementation group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '4.15.0'
implementation group: 'org.apache.poi', name: 'poi-ooxml', version: '5.2.4'
}
```> [!NOTE]
> Some of the dependencies may not work in furure. Update to their latest version# Instructions
Clone/Download the code to your local machine. Pull the code stubs/Unpack the file. Open your terminal/shell. Navigate to the project folder in your terminal.
> ***For Windows:*** Execute the command in the terminal (command prompt or powershell).
```
gradle build
```
> ***For Mac/Linux:*** Execute this command in the bash terminal.
```
./gradlew run
```Wait for some time and bingo! you will have the output in the file named `TestResult.xlsx` and the screenshots in the folder named `screenshots`.
## 🤝 Thanks for taking the time to view our project! We hope that you found it interesting and informative.