This GitHub repository contains an automation project that utilizes various tools and technologies to streamline the testing process. The project leverages Selenium WebDriver, TestNG, Java, Streams, and other libraries to automate and enhance the testing of web applications. It also includes processes for parallel execution of test cases, cross-browser testing, and the generation of Extent Reports for comprehensive test reporting.
- Selenium WebDriver: A powerful automation tool for web application testing.
- TestNG: A testing framework that facilitates test execution, configuration, and reporting.
- Java: The primary programming language used for writing automation scripts.
- Streams: Java streams are used for efficient data manipulation and processing.
- Maven: A build automation tool to manage project dependencies and build processes.
- Extent Reports: A reporting library for generating detailed test reports.
- Parallel Execution: The project supports parallel execution of test cases for faster testing.
The project is structured as follows:
src
: Contains the test scripts written in Java using Selenium WebDriver and TestNG.downloads
: Contains the downloaded files.testng.xml
: The TestNG configuration file for test suite execution.pom.xml
: The Maven project configuration file.
Before running the automation project, make sure you have the following installed:
- Java Development Kit (JDK): Version 8 or higher.
- Maven: Ensure Maven is installed and configured properly.
- WebDriver Drivers: Download and configure WebDriver drivers for the browsers you intend to use (e.g., ChromeDriver, GeckoDriver for Firefox).
Clone this repository to your local machine using the following command:
git clone https://github.com/sahilSourabh/Selenium-WebDriver-Automation.git
Update the configuration files (testng.xml
) with your specific settings, such as web URL, browser choice, and parallel execution settings.
To execute the tests, run the following command from the project root directory:
mvn clean test
This will trigger the execution of test cases defined in the TestNG suite (testng.xml
) and generate test reports.
Contributions to this project are welcome! If you'd like to contribute, please follow these steps:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/add-new-feature
). - Commit your changes (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature/add-new-feature
). - Open a pull request on GitHub.
If you encounter any issues, bugs, or have suggestions, please open an issue on GitHub.
- Special thanks to the Selenium, TestNG, and Extent Reports communities for their valuable tools and resources.
Thank you for using this automation project. Happy testing! 🚀