Course Description
A comprehensive 12-week course covering Selenium WebDriver with Java from basics to advanced frameworks. Perfect for beginners who want to become automation engineers.
What You Will Learn
- Java programming fundamentals for test automation
- Selenium WebDriver API and advanced interactions
- TestNG and JUnit for test management
- Page Object Model and Page Factory design patterns
- Data-driven testing with Excel and JSON
- CI/CD integration with Jenkins
- Building a scalable automation framework from scratch
Prerequisites
Basic understanding of manual testing. No Java or Selenium experience required.
Curriculum
Week 1: Java Basics for Automation
- Setting up JDK, IntelliJ/Eclipse
- Variables, Data Types, Operators
- Control Flow (if/else, loops)
- Arrays and Strings
- Hands-on: Write a calculator program
Week 2: OOP Concepts in Java
- Classes and Objects
- Inheritance, Polymorphism, Encapsulation, Abstraction
- Constructors, this/super keywords
- Interfaces and Abstract Classes
- Hands-on: Build a bank account system
Week 3: Java Advanced Topics
- Collections Framework (List, Set, Map)
- Exception Handling (try/catch, throws, custom exceptions)
- File I/O (reading/writing files)
- Date and Calendar APIs
- Hands-on: Read test data from a CSV file
Week 4: Selenium WebDriver Fundamentals
- What is Selenium? Architecture and components
- Setting up WebDriver (ChromeDriver, GeckoDriver)
- Locators: ID, Name, ClassName, TagName, LinkText, PartialLinkText
- Basic Browser Commands (get, navigate, close, quit)
- Hands-on: Open google.com and verify the title
Week 5: Advanced Locators & WebElement Interactions
- XPath (Absolute, Relative, Axes, Functions)
- CSS Selectors
- Handling text boxes, buttons, dropdowns, checkboxes, radio buttons
- Actions class (mouse hover, drag and drop, double click, right click)
- Hands-on: Automate a flight booking form
Week 6: Wait Strategies & Synchronization
- Implicit vs Explicit vs Fluent Waits
- WebDriverWait and ExpectedConditions
- Handling AJAX calls and dynamic elements
- Page load timeout and script timeout
- Hands-on: Automate a dynamic search suggestions page
Week 7: Handling Alerts, Frames & Windows
- JavaScript Alerts (accept, dismiss, getText, sendKeys)
- Switching between frames and iframes
- Handling multiple windows and tabs
- Robot class for file uploads and keyboard actions
- Hands-on: Automate file upload and alert handling scenario
Week 8: TestNG Framework
- Setting up TestNG
- Annotations (@Test, @BeforeMethod, @AfterMethod, @BeforeClass, etc.)
- Assertions (Assert, SoftAssert)
- TestNG XML configuration
- Parallel execution, groups, data providers
- ExtentReports for reporting
- Hands-on: Convert existing tests to TestNG with reporting
Week 9: Page Object Model (POM) & Page Factory
- Design patterns in test automation
- Page Object Model implementation
- Page Factory and @FindBy annotation
- Base class and page inheritance
- Hands-on: Re-structure the framework using POM
Week 10: Data-Driven Testing & Utilities
- Reading test data from Excel (Apache POI)
- Reading from JSON and XML
- Config properties files
- Singleton pattern for WebDriver
- Taking screenshots on failure
- Hands-on: Create a data-driven test suite for login
Week 11: CI/CD & Framework Enhancements
- Integrating with Maven (pom.xml)
- Setting up Jenkins for scheduled test runs
- Email notifications for test results
- Cross-browser testing (Chrome, Firefox, Edge)
- Running tests in parallel (Grid/Standalone)
- Hands-on: Set up a Jenkins job for the automation suite
Week 12: Capstone Project & Interview Prep
- Build a complete automation framework from scratch
- Framework includes: POM, TestNG, ExtentReports, Excel DDT, Screenshots, Config, CI/CD
- Integrate with GitHub
- Mock interview questions and answers
- Resume tips for SDET roles
- Hands-on: Present the framework and run full test suite
Course Description
A comprehensive 4-week course designed for beginners and intermediate testers who want to master manual software testing from the ground up.
What You Will Learn
- Understand the complete software testing lifecycle
- Write effective test cases and bug reports
- Apply test design techniques like equivalence partitioning and boundary value analysis
- Manage test execution and track defects professionally
- Work in Agile/Scrum environments as a QA engineer
Prerequisites
No prior testing experience required. Basic understanding of software development is helpful.
Curriculum
Week 1: Foundations of Manual Testing
- Introduction to Software Testing
- SDLC vs STLC
- Test Levels & Types (Unit, Integration, System, Acceptance)
- Test Case Writing Fundamentals
- Bug Reporting & Tracking
- Hands-on: Write test cases for a sample application
Week 2: Test Design Techniques
- Equivalence Partitioning
- Boundary Value Analysis
- Decision Table Testing
- State Transition Testing
- Use Case Testing
- Hands-on: Apply techniques to real-world scenarios
Week 3: Test Management & Defect Tracking
- Test Planning & Estimation
- Test Metrics & Reporting
- Defect Life Cycle
- Bug Tracking Tools (Jira, Bugzilla)
- Test Environment Management
- Hands-on: Create a test plan and track defects
Week 4: Agile Testing & Real-World Scenarios
- Agile/Scrum Testing
- Pair Testing & Peer Reviews
- Exploratory Testing
- API Testing Basics
- Interview Preparation & Resume Tips
- Hands-on: Full cycle testing of a sample project