Introduction to Software Testing
- What is Software Testing?
- Importance of Testing in SDLC
- Types of Testing (Manual vs Automation)
- Software Development Models (Waterfall, Agile, V-Model)
- Testing Principles
Manual Testing
Software Testing Life Cycle (STLC)
- Phases of STLC (Requirement, Planning, Design, Execution, Closure)
- Test Planning & Test Strategy
- Test Case Design & Execution
Types of Testing
- Functional Testing
- Non-Functional Testing (Performance, Security, Usability)
- Regression & Smoke Testing
- UAT (User Acceptance Testing)
Test Case Design Techniques
- Boundary Value Analysis (BVA)
- Equivalence Partitioning
- Decision Table & State Transition Testing
Defect Management & Bug Reporting
- What is a Bug? Life Cycle of a Defect
- Defect Severity vs Priority
- Bug Tracking Tools (JIRA, Bugzilla)
Test Management Tools
- Introduction to Test Management Tools
- Working with TestRail / HP ALM / JIRA
Automation Testing using Selenium &
Java
Introduction to Automation Testing
- What is Automation Testing?
- Benefits & Challenges of Automation
- Automation Testing vs Manual Testing
- Choosing Test Cases for Automation
Core Java for Selenium
- Java Basics (Data Types, Variables, Operators)
- Control Statements (if-else, switch, loops)
- Functions & Object-Oriented Programming (OOP)
- Exception Handling
- Collections Framework (List, Set, Map)
- File Handling in Java
Selenium WebDriver Basics
- Introduction to Selenium & WebDriver Architecture
- Setting up Selenium in Java (Installing WebDriver, Maven, Eclipse/IntelliJ)
- Locators in Selenium (ID, Name, XPath, CSS Selector)
- Interacting with Web Elements (Click, Input, Dropdowns, Alerts, Frames)
Advanced Selenium WebDriver
- Handling Multiple Windows & Pop-ups
- Synchronization (Implicit & Explicit Wait)
- Taking Screenshots in Selenium
- Mouse & Keyboard Actions (Actions Class)
- Working with Tables & Dynamic Elements
TestNG Framework
- Introduction to TestNG
- Writing & Running Test Cases in TestNG
- TestNG Annotations & Assertions
- TestNG Reports & Parallel Execution
Page Object Model (POM) & Data-Driven Testing
- What is POM?
- Implementing POM in Selenium
- Data-Driven Testing using Apache POI (Excel)
- Reading Data from Excel Sheets
Selenium Grid & Cross-Browser Testing
- What is Selenium Grid?
- Running Tests on Multiple Browsers (Chrome, Firefox, Edge)
- Parallel Execution using Selenium Grid
Continuous Integration (CI) with Selenium
- Introduction to Jenkins for Test Automation
- Running Selenium Tests in Jenkins
- Integrating Selenium with GitHub
API Testing (Optional)
- Introduction to API Testing
- REST vs SOAP APIs
- Using Postman for API Testing
- Automating API Tests with RestAssured in Java
Performance Testing Basics (Optional)
- Introduction to API Testing
- REST vs SOAP APIs
- Using Postman for API Testing
- Automating API Tests with RestAssured in Java
API Testing (Optional)
- Introduction to API Testing
- REST vs SOAP APIs
- Using Postman for API Testing
- Automating API Tests with RestAssured in Java
Performance Testing Basics (Optional)
- Introduction to Performance Testing
- Overview of JMeter & Load Testing
Final Project & Real-Time Hands-on
- Creating Test Automation Framework using Selenium, TestNG, and Maven
- Writing Test Scripts for a Live E-commerce Website
- Generating Automation Reports & Analyzing Test Results