Skip to content

An end-to-end automated testing suite for the E-commerce Playground website, built with Selenium and Postman, to validate its functionality, UI, and performance. It includes test case development, automated reporting, API validation, performance testing, and CI/CD integration for continuous and efficient testing.

License

Notifications You must be signed in to change notification settings

Omar-Mega-Byte/EcommPlaygroundTestMasters

Repository files navigation

EcommPlaygroundTestMasters

An end-to-end, fully automated testing framework designed for the E-commerce Playground web application (https://ecommerce-playground.lambdatest.io/). Whether you're testing UI, functionality, or performance, this project has you covered! ⚡

🏗️ Project Structure

This project is structured to support scalable and maintainable test automation. Here's a quick breakdown of the folder structure:

/project-root
│
├── /src/                    # Source folder for all test scripts
│   ├── /tests/              # Test cases (UI, functional, API, performance)
│   ├── /pages/              # Page Object Model classes (for UI automation)
│   ├── /utils/              # Utility functions and helpers
│   └── /data/               # Test data and configuration files
│
├── /reports/                # Folder for storing test execution reports
│   ├── /html/               # HTML reports (generated by TestNG or JUnit)
│   └── /logs/               # Logs from test execution
│
├── /postman/                # Postman collection for API testing
│   └── /collections/        # API test collections (with test scripts)
│
├── /config/                 # Configuration files (browser settings, test parameters)
│   └── config.properties    # Main configuration file
│
├── /scripts/                # Scripts for performance testing (JMeter/Gatling)
│
├── /ci/                     # CI/CD pipeline configurations (e.g., Jenkins integration)
│   └── Jenkinsfile          # Example configuration for Jenkins
│
└── README.md                # Project overview and setup guide

Key Features

1. UI Testing 🖥️

Automated tests for the E-commerce Playground web interfaces using Selenium WebDriver, including:

  • Cross-browser testing 🌍
  • Responsive design checks 📱💻

2. Functional Testing

Test common workflows like:

  • User login
  • Form submissions
  • Data processing

3. API Testing 🌐

  • Postman integration for API validation.
  • Ensure endpoints return correct data and handle edge cases.

4. Performance Testing 💨

Run load and stress tests with JMeter or Gatling:

  • Test response times ⏱️
  • Analyze scalability and server load 🌐

5. Test Reporting 📊

Get detailed HTML test reports generated via TestNG or JUnit, complete with:

  • ✅ Pass/Fail status
  • 🐞 Bug logs for debugging

6. CI/CD Integration 🔄

Seamlessly integrate with your CI/CD pipeline for continuous testing:

  • Works with Jenkins, GitHub Actions, or any other CI tool of choice.
  • Automatic test execution with every commit 💥

🚀 Getting Started

Prerequisites:

  • Java 8 or higher ☕
  • Maven or Gradle 🛠️
  • Selenium WebDriver for browser automation 🖱️
  • Postman for API testing 🌐
  • JMeter or Gatling for performance testing 🚀
  • Jenkins For CI/CD integration. 🤖

Installation Steps:

  1. Clone the repository:

    git clone https://github.com/Omar-Mega-Byte/EcommPlaygroundTestMasters.git
    cd EcommPlaygroundTestMasters
  2. Install dependencies:

    mvn install
  3. Configure your environment:

    • Update config/config.properties with your browser preferences and API base URLs.
  4. Run the Tests:

    • UI & Functional Tests (with TestNG):
      mvn test -Dtest=YourTestClass
    • API Tests: Import and run the Postman collections or use Newman for CLI execution.
    • Performance Tests: Execute JMeter or Gatling scripts as per the configurations.

🚨 Reports:

  • All test execution reports are saved in the /reports/ folder.
  • HTML reports are automatically generated after each run.
  • Logs and detailed error reports for easy debugging 🐞

🌟 Visual Features

1. Selenium UI Tests 🧪

  • Automated UI tests simulate real user interactions. Clicks, form submissions, and navigation are tested across multiple browsers for consistency.

2. Postman API Validation 🔍

  • Postman collections ensure your APIs are up and running with the right responses, all automated and version-controlled!

3. Performance Testing Reports 📈

  • JMeter/Gatling generate performance test reports with data like response time, load capacity, and error rates to ensure your app can scale under heavy traffic.

💡 Contributing

We welcome contributions! 🎉

  • Fork the repository
  • Open an issue for discussion or a pull request for code
  • Follow the coding standards and write tests for your changes

📄 License

This project is licensed under the MIT License. See the LICENSE file for more details.

📞 Contact Information

For any questions or suggestions, feel free to reach out:

🧑‍🤝‍🧑 Meet the Team

This project is the result of collaborative work by an amazing team! 👏


🎉 Enjoy Testing! 🧑‍💻

This framework is designed to make testing the E-commerce Playground web application faster, easier, and more efficient. We hope you love it as much as we do! 🚀


About

An end-to-end automated testing suite for the E-commerce Playground website, built with Selenium and Postman, to validate its functionality, UI, and performance. It includes test case development, automated reporting, API validation, performance testing, and CI/CD integration for continuous and efficient testing.

Topics

Resources

License

Stars

Watchers

Forks

Languages