Welcome to the Selenium Learning Guide β your complete hands-on path to mastering Selenium with Java!
This repository covers everything from basic automation concepts to advanced framework integration, including TestNG, Maven, Allure Reports, Jenkins, and more.
With real-world examples and best practices, you'll gain the skills needed to build robust, scalable, and industry-level automation frameworks from scratch. π
Technology | Purpose |
---|---|
Java | Core programming language for Selenium scripts |
Selenium WebDriver | Browser automation and interaction |
TestNG | Framework for organizing, running, and reporting tests |
Maven | Build automation and dependency management |
Allure Reports | Beautiful and interactive test execution reports |
Jenkins | CI/CD tool for automating test runs and deployments |
Git & GitHub | Version control and collaboration |
Log4j | Logging framework for real-time debugging and tracking |
Apache POI | Read/write Excel files for Data-Driven Testing (DDT) |
TestData.xlsx | External Excel file for managing dynamic test data |
- π Introduction to Selenium WebDriver
- π Setting up WebDriver with Java
- π Understanding Locators (ID, Name, XPath, CSS, etc.)
- π Interacting with Web Elements (Click, SendKeys, GetText)
- π Browser Commands (Back, Forward, Refresh)
- π Handling Dropdowns, Alerts, and Popups
- π Working with Frames, Windows, and Tabs
- π Mouse & Keyboard Actions using Actions Class
- π Screenshots for Reporting
- π Handling AJAX and Dynamic Web Elements
- π Implicit vs Explicit vs Fluent Waits
- π Setting up and Configuring TestNG
- π Writing and Structuring Test Cases
- π TestNG Annotations (@Test, @BeforeMethod, @AfterClass, etc.)
- π Assertions for Verification
- π Data-Driven Testing with DataProviders
- π Parallel Execution of Tests
- π Setting up Maven Project Structure
- π Managing Dependencies (
pom.xml
) - π Running Test Suites with Maven Commands
- π Installing and Configuring Allure
- π Generating Advanced HTML Reports
- π Analysing and Debugging with Interactive Reports
- π Setting up Jenkins on Localhost
- π Creating Jobs to Trigger Selenium Tests
- π Publishing Allure Reports automatically after test runs
- π Initialising a Git Repository
- π Managing Commits, Branches, and Pull Requests
- π Pushing and Collaborating on GitHub
- π Setting up
log4j.properties
orlog4j.xml
- π Adding Loggers in Selenium Framework
- π Logging Events and Errors for Better Debugging
- π Reading Test Data from Excel Files
- π Executing Data-Driven Test Cases
- π Maintaining Test Data using External Excel Sheets
- π Organising External Test Data Files
- π Dynamic Data Control for Flexibility in Testing
Before you begin, ensure you have the following installed:
- β Java JDK (version 8 or above)
- β IDE (Eclipse, IntelliJ IDEA)
- β Maven (Latest version)
- β Git CLI and GitHub Account
- β Jenkins (Optional, for CI/CD automation)
- Build a Complete Selenium Automation Framework using best industry practices.
- Understand real-world integrations like Allure Reports, Maven, Jenkins, and GitHub.
- Gain hands-on experience to handle live automation projects confidently.