About Course
Course Objective
-
Understand core Java programming and apply OOP principles in automation projects
-
Design and execute automated test scripts using Selenium WebDriver
-
Implement structured test execution using TestNG
-
Build data-driven frameworks using Excel, CSV, and Properties files
-
Apply Page Object Model (POM) design pattern for scalable automation frameworks
-
Integrate Selenium with TestNG and Cucumber
-
Build a complete automation testing framework from scratch
-
Version control automation projects using Git
Course Outline
Module 1: Java & OOP for Beginners
- Java fundamentals (data types & variables, conditions, loops, arrays, 2d arrays, methods)
- OOP principles (Emasculation, Inheritance, Polymorphism, Abstraction)
- Data structures (List, Map, Set) in test data
- Exception handling (try-catch-finally)
Module 2: Automation Testing Basics
- Manual vs Automation
- What is Selenium and how it fits into testing
- Test lifecycle: TDD vs BDD
- Overview of tools used: Selenium Web Driver, TestNG, Cucumber, Maven, TDD, etc.
Module 3: Selenium WebDriver
- WebDriver setup (Chrome Driver, Edge, etc.)
- Locators: id, name, class name, Tag Name, link Text, partial link Text, CSS, x path (dynamic & absolute)
- Browser navigation
- Handling dropdowns, tables, windows, alerts, waits (implicit/explicit/fluent)
- Capture screenshots, logs
Module 4: TestNG
- TestNG installation & configuration
- Test lifecycle, annotations
- Assertions (soft vs hard)
- Grouping & sequencing tests
- Data Providers
- Running XML suites
Module 5: Data-Driven Testing
- Apache POI to read/write Excel
- Open CSV for CSV handling
- Reading from Java. properties files, Data Provider
- Dynamic test generation using data sets
Module 6: Page Object Model
- What is POM? Why use it?
- Structuring page classes
- Reusable base classes
- Using Page Factory
Module 7: Final Project & Review
- Build a full framework from scratch
- Use Excel/CSV/. Properties for data
- Combine Selenium, POM, TestNG, and Cucumber
- Version control the code in Git
- Wrap up + Q&A + Feedback
