Duration 3 days – 21 hrs
Overview
This course provides hands-on training in Gradle and Maven for build automation and project dependency management, along with Selenium for test automation. The course is tailored for both developers and QA professionals looking to streamline the build-test lifecycle. Participants will learn how to automate software builds using Gradle and Maven and implement robust browser-based test automation using Selenium WebDriver.
Objectives
- Understand and configure build automation using Maven and Gradle.
- Manage project dependencies and plugins effectively.
- Build, package, and test applications using automated workflows.
- Create and execute automated test cases using Selenium WebDriver.
- Integrate Selenium tests into CI pipelines using Gradle or Maven.
- Apply Dev-QA collaboration practices using shared tools.
Audience
- Java Developers
- QA Engineers & Test Automation Specialists
- DevOps Engineers
- Build and Release Managers
- Technical Team Leads
Pre-requisites
- Basic knowledge of Java programming
- Familiarity with IDEs like IntelliJ IDEA or Eclipse
- Basic understanding of software testing concepts and version control (Git)
Content
Day 1: Maven and Gradle Essentials
Introduction to Build Tools
- Role in the SDLC
- Comparison: Gradle vs Maven vs Ant
Maven Fundamentals
- Project Object Model (POM)
- Lifecycle phases: validate, compile, test, package
- Dependency management and central repositories
- Plugins and goals
Gradle Fundamentals
- Gradle vs Maven syntax
- Build scripts: build.gradle (Groovy/Kotlin)
- Tasks, plugins, and dependency configurations
Hands-on Labs
- Create Maven and Gradle projects
- Build, test, and package a sample Java app
Day 2: Advanced Build Automation and Integration
Multi-module Projects
- Maven: Parent POM and modules
- Gradle: settings.gradle and subprojects
Profiles and Environments
- Maven profiles for different environments
- Gradle properties and environment switching
Testing Integration
- JUnit/TestNG integration with Maven & Gradle
- Executing test cases and generating reports
CI/CD Considerations
- Using Maven and Gradle with Jenkins or GitHub Actions
- Publishing artifacts and logs
Hands-on Labs
- Build a multi-module project
- Configure test reports and profiles
Day 3: Selenium Test Automation
Introduction to Selenium
- Role of Selenium in QA automation
- Components: WebDriver, Grid, IDE
Selenium WebDriver Basics
- Locators (ID, name, XPath, CSS)
- Browser interaction: click, sendKeys, wait
- Handling alerts, dropdowns, and multiple tabs
Test Frameworks and Integration
- Using Selenium with JUnit/TestNG
- Structure of automated test suites
- Integrating with Maven/Gradle test lifecycle
Cross-browser Testing and Grid
- Running tests on multiple browsers
- Introduction to Selenium Grid or cloud services
Hands-on Labs
- Write Selenium scripts using Java
- Execute tests via Gradle/Maven
- Export reports and logs

