Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alokmish11/tutorialninja_8192

The Tutorials Ninja platform is a feature-rich e-commerce website offering a wide variety of products, including electronics, fashion, home goods, and more. The platform provides essential functionalities such as browsing, cart management, and checkout, ensuring a seamless shopping experience. This project focuses on performing both manual and aut
https://github.com/alokmish11/tutorialninja_8192

cucumber pom selenium-webdriver

Last synced: 1 day ago
JSON representation

The Tutorials Ninja platform is a feature-rich e-commerce website offering a wide variety of products, including electronics, fashion, home goods, and more. The platform provides essential functionalities such as browsing, cart management, and checkout, ensuring a seamless shopping experience. This project focuses on performing both manual and aut

Awesome Lists containing this project

README

        

# Tutorials Ninja E-Commerce Testing

## ๐ŸŒŸ Overview
The **Tutorials Ninja** platform is a feature-rich e-commerce website offering a wide variety of products, including electronics, fashion, home goods, and more. The platform provides essential functionalities such as browsing, cart management, and checkout, ensuring a seamless shopping experience.

This project focuses on performing both **manual** and **automated testing** to ensure the platform's full functionality and optimal user experience.

---

## ๐Ÿ› ๏ธ Key Functionalities
### Expanded Functional Areas
1. **User Registration and Login**
2. **Product Browsing and Display**
3. **Search Functionality**
4. **Cart Management**
5. **Checkout Process**
6. **Order History**
7. **Account Management (Update Details)**
8. **Promo Codes and Discounts**
9. **Multi-currency Support**
10. **Mobile and Cross-browser Compatibility**
11. **Security Features**
12. **Error Handling**

---

## ๐Ÿ” Testing Scope
### **1. Usability Testing**
- Ensure the platform is user-friendly and intuitive.
- Evaluate browsing, cart management, and checkout efficiency.

### **2. Functionality Testing**
- Test core features such as:
- Registration and login
- Product browsing and search
- Cart and checkout workflows

### **3. Performance Testing**
- Simulate high-traffic scenarios (e.g., sales events).
- Assess load times, stability, and scalability.

### **4. Security Testing**
- Conduct a comprehensive security audit to:
- Identify vulnerabilities
- Ensure data protection

### **5. Compatibility Testing**
- Test across:
- Multiple devices (desktop, tablet, mobile)
- Browsers (Chrome, Firefox, Safari, Edge, etc.)

---

## ๐Ÿงช Testing Approach
### **Manual Testing**
- Perform exploratory testing to identify usability issues and edge cases.
- Validate workflows manually, focusing on critical features:
- Login
- Product search
- Cart management
- Checkout

### **Automation Testing (Selenium)**
- Automate critical workflows, including:
- Adding products to the cart
- Completing checkout
- Applying promo codes
- Use Selenium for **regression testing** to ensure stability after updates.

---

## โš™๏ธ Framework and Tools
### **Cucumber Framework with POM (Page Object Model)**
**Automation Testing Highlights:**

#### **Login Functionality**
- Automate login using **valid** and **invalid credentials**.
- Validate multi-factor authentication (MFA) and error messages.

#### **Product Search and Filters**
- Automate product searches to ensure filters (e.g., category, price, rating) return accurate results.
- Test sorting functionality (e.g., price, best sellers).

#### **Checkout Process**
- Automate adding items to the cart and completing checkout workflows.
- Use Cucumber to:
- Automate applying promo codes
- Verify correct discount calculations

---

## ๐Ÿ› ๏ธ Tools and Technologies
- ![Selenium Logo](https://upload.wikimedia.org/wikipedia/commons/d/d5/Selenium_Logo.png) **Automation Tool**: Selenium WebDriver
- ![Cucumber Logo](https://upload.wikimedia.org/wikipedia/commons/9/9f/Cucumber_Logo.png) **Framework**: Cucumber with Page Object Model (POM)
- ![Java Logo](https://upload.wikimedia.org/wikipedia/en/3/30/Java_programming_language_logo.svg) **Programming Language**: Java/Python (depending on implementation)
- ![Jira Logo](https://upload.wikimedia.org/wikipedia/en/6/64/Jira_Logo.png) **Test Management**: Jira/TestRail
- ![GitHub Logo](https://upload.wikimedia.org/wikipedia/commons/9/91/Octicons-mark-github.svg) **Version Control**: GitHub

---

## ๐ŸŽฏ Project Goals
- Validate the e-commerce platform's functionality, usability, and security.
- Ensure a seamless and consistent user experience across all devices and browsers.
- Automate critical workflows to improve testing efficiency and coverage.

---

## ๐Ÿ“‹ How to Use
1. Clone the repository:
```bash
git clone https://github.com/yourusername/tutorials-ninja-testing.git
```
2. Navigate to the project directory:
```bash
cd tutorials-ninja-testing
```
3. Set up the environment and dependencies:
```bash
# For Python:
pip install -r requirements.txt

# For Java (Maven):
mvn install
```
4. Run the tests:
```bash
# Manual tests: Refer to the test cases in the documentation folder.

# Automation tests:
mvn test # For Maven setup
```

---

## ๐Ÿ“‚ Folder Structure
```
โ”œโ”€โ”€ src
โ”‚ โ”œโ”€โ”€ main
โ”‚ โ”‚ โ””โ”€โ”€ java
โ”‚ โ”‚ โ””โ”€โ”€ pageobjects
โ”‚ โ””โ”€โ”€ test
โ”‚ โ””โ”€โ”€ java
โ”‚ โ””โ”€โ”€ stepdefinitions
โ”œโ”€โ”€ features
โ”‚ โ””โ”€โ”€ *.feature
โ”œโ”€โ”€ reports
โ”‚ โ””โ”€โ”€ test-report.html
โ”œโ”€โ”€ pom.xml
โ””โ”€โ”€ README.md
```

---

## ๐Ÿ“œ License
This project is licensed under the MIT License. See the `LICENSE` file for details.

---

## ๐Ÿ‘ฅ Contributors
- **Alok Mishra**
- **vinita Kumawat**

Feel free to contribute! Fork this repository, create a branch, and submit a pull request.

---

## ๐Ÿ’ฌ Feedback and Support
For feedback or support, create an issue or contact [[email protected]](mailto:[email protected]).