https://github.com/cihat-kose/selenium-automation-suite
Selenium automation suite for end-to-end web testing using JUnit, TestNG, and Cucumber. Modular structure with shared utilities for efficient testing.
https://github.com/cihat-kose/selenium-automation-suite
cucumber-reports java junit5 selenium-automation-project testng ui-testing
Last synced: about 2 months ago
JSON representation
Selenium automation suite for end-to-end web testing using JUnit, TestNG, and Cucumber. Modular structure with shared utilities for efficient testing.
- Host: GitHub
- URL: https://github.com/cihat-kose/selenium-automation-suite
- Owner: cihat-kose
- License: mit
- Created: 2024-12-29T02:34:05.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2024-12-30T02:00:07.000Z (9 months ago)
- Last Synced: 2025-07-11T20:43:19.012Z (3 months ago)
- Topics: cucumber-reports, java, junit5, selenium-automation-project, testng, ui-testing
- Language: Java
- Homepage: https://www.selenium.dev/
- Size: 132 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Selenium Automation Suite







---
## Project Overview
Selenium Automation Suite is a comprehensive modular testing framework designed to automate UI and backend testing for web applications. It integrates **Cucumber**, **JUnit**, **TestNG**, and **Selenium** to facilitate Behavior Driven Development (BDD), end-to-end testing, and parallel test execution.
---
## Project Structure
```
selenium-automation-suite/
│
├── .idea/ # IntelliJ IDEA project files
├── common/ # Shared utility modules
│
├── cucumber-projects/ # Cucumber-based projects
│ └── parabank-cucumber-tests/ # ParaBank Cucumber tests
│ ├── src/ # Source code
│ ├── target/ # Build output
│ └── pom.xml # Maven configuration file
│
├── junit-projects/ # JUnit-based projects
│ ├── demowebshop-e2e-tests/ # DemoWebShop end-to-end tests
│ ├── itera-tests/ # Itera test scenarios
│ ├── itera-tests-xpath/ # XPath-based Itera tests
│ └── shopdemo-e2e-tests/ # ShopDemo tests
│ └── pom.xml # Maven configuration file
│
├── testng-projects/ # TestNG-based projects
│ ├── demowebshop-e2e-tests-testng/ # TestNG DemoWebShop tests
│ └── nopcommerce-admin-testng/ # NopCommerce admin tests
│ ├── src/ # Source code
│ ├── target/ # Build output
│ └── pom.xml # Maven configuration file
│
├── .gitignore # Git ignore file
└── pom.xml # Parent Maven configuration file
```---
## Projects
### 1. Cucumber Projects
**parabank-cucumber-tests**
- Automated test suite for the ParaBank application.
- Utilizes Cucumber, Selenium, and TestNG.
- Includes feature files and step definitions in `src/test/java`.### 2. JUnit Projects
- **demowebshop-e2e-tests** – End-to-end tests for DemoWebShop.
- **itera-tests** – Itera test scenarios.
- **itera-tests-xpath** – XPath-based Itera tests.
- **shopdemo-e2e-tests** – End-to-end tests for ShopDemo application.### 3. TestNG Projects
- **demowebshop-e2e-tests-testng** – TestNG tests for DemoWebShop.
- **nopcommerce-admin-testng** – Admin panel tests for NopCommerce.---
## Installation
### Clone the Repository
```bash
git clone https://github.com/cihat-kose/selenium-automation-suite.git
cd selenium-automation-suite
```### Open in IntelliJ IDEA
1. **File -> New -> Project from Existing Sources**
2. Select the `pom.xml` file. Maven will automatically import dependencies.---
## Dependencies
Main dependencies required for the project:
- **Selenium** – UI automation
- **Cucumber** – BDD testing
- **TestNG** – Test organization and execution
- **JUnit** – Unit testing framework
- **Extent Reports** – HTML and PDF test reports
- **Apache POI** – Excel file processing
- **Commons IO** – File handling utilitiesDependencies are managed via the `pom.xml` file in each module.
---
## Running Tests
### Run All Tests
```bash
mvn clean test
```### Run Specific Module
```bash
cd cucumber-projects/parabank-cucumber-tests
mvn clean test
```### Run with Profiles
```bash
mvn clean test -PRegression
```---
## Reporting
- Test reports are generated in the `test-output` and `testReports` folders.
- HTML reports are located in `SparkReport`.
- PDF reports are generated as `PdfReport.pdf`.---
## Contributing
Contributions are welcome!
1. Fork the repository.
2. Create a new branch:
```bash
git checkout -b new-feature
```
3. Commit your changes:
```bash
git commit -m "Add new feature"
```
4. Push to the branch:
```bash
git push origin new-feature
```
5. Open a Pull Request.---
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.---
## Contact
For any inquiries or issues, please open an issue in this repository.