Manual testing course syllabus
Fundamentals of Software Testing
- Course overview and planning discussion
- Software Development Life Cycle
- Introduction to Software Testing
- Difference between QA and QC
- Difference between verification and validation
STLC & Principles of Software Testing
- Software Testing Life Cycle (STLC)
- Principles of Software Testing
- Testing Process
Testing Levels, Types & Techniques
- Levels of software testing
- Types of testing
- Static and dynamic testing
- Black-box and white-box testing techniques
- Overview of non-functional types of testing
Test Creation to Bug Report
- Test scenario and test case creation
- Test case review activities
- Test environment and test execution
- Defect / bug reporting
Software Testing Project (Practical)
- What is a domain? Types of domains
- Software testing tools
- Bug tracking and test case management tools (Jira)
- Browser developer tools / console usage
API Testing (Practical)
- What is an API?
- SOAP vs REST API
- API testing using Postman
- API methods, status codes and responses
- Basic database understanding
AI Basics for Software Testers
- Introduction to Artificial Intelligence (AI)
- AI vs test automation
- Writing test cases using AI
- Reviewing requirements / PRD using AI
- Identifying missing and edge scenarios using AI
- Bug reporting and documentation using AI
- Tools: ChatGPT or similar AI tools
Certification, Resume & Interview Guidance
- Software testing certification guidance
- Resume preparation
- Mock tests and mock interviews
- Career guidance and doubt solving
Automation testing course syllabus
Introduction to Test Automation
- Course overview and automation roadmap
- Introduction to test automation
- Manual testing vs test automation
- Benefits and limitations of automation
- When to automate
- Automation testing process
- Automation tool selection
- Introduction to Playwright
- Playwright vs Selenium
- Playwright features and supported browsers
- Real-world automation use cases
TypeScript Basics for Automation
- Introduction to TypeScript
- Environment setup
- Variables and data types
- Operators
- Conditional statements
- Loops
- Functions
- Arrays and objects
- Classes and objects
- Interfaces and types
- Promises
- Async/await
- TypeScript concepts required for Playwright
Playwright Fundamentals
- Playwright installation and project setup
- Playwright project structure
- package.json
- playwright.config.ts
- Browser, browser context and page
- First Playwright test
- Playwright test runner
- Running tests
- Headed and headless execution
- Test hooks
- Test configuration
Locators & Web Elements
- Understanding locators
- Locator strategy
- Playwright recommended locators
- getByRole, getByText, getByLabel, getByPlaceholder, getByTestId
- CSS selectors
- XPath
- Locator chaining and filtering
- Handling multiple elements
- Dynamic elements
- Text fields and buttons
- Checkboxes and radio buttons
- Dropdowns
- Tables
- File upload and download
- Iframes
- Alerts / dialogs
- Multiple tabs / windows
Test Execution, Assertions & Test Data
- Playwright auto-waiting
- Handling dynamic elements
- Wait for elements, URL, load state and response
- Playwright assertions
- Web-first assertions
- Text and visibility assertions
- URL and attribute assertions
- Soft assertions
- Test organisation
- Test tags and annotations
- Test data management
- JSON and CSV test data
- Data-driven testing
- Parameterisation
- Fixtures
- Retries and timeouts
Page Object Model & Automation Framework
- Introduction to Page Object Model
- Benefits of POM
- Creating page classes
- Locators in page objects
- Reusable methods
- Base page
- Fixtures
- Test data management
- Environment configuration
- Framework folder structure
- Reusable utilities
- Automation framework best practices
- Maintainable automation framework
Debugging, Reporting & Visual Testing
- Playwright Inspector
- Debugging Playwright tests
- Screenshots
- Video recording
- Trace Viewer
- Test execution results
- HTML reports
- Debugging failed tests
- Understanding test failures
- Basic flaky test handling
- Introduction to visual regression testing
- Screenshot comparison
- toHaveScreenshot()
Git, CI/CD & Parallel Execution
- Git for automation: repository setup, branch, commit, push and pull
- GitHub and basic collaboration workflow
- Introduction to CI/CD
- GitHub Actions
- Running Playwright tests in CI
- Scheduled test execution
- Environment variables
- Test reports and artifacts
- Screenshots / videos / traces in CI
- Why parallel execution is required
- Playwright workers and running tests in parallel
- Basic understanding of sharding
- Introduction to Jenkins
- Running Playwright tests in Jenkins
- Jenkins vs GitHub Actions
API Automation with Playwright
- Introduction to API testing
- UI testing vs API testing
- Why API automation is required
- HTTP methods: GET, POST, PUT and DELETE
- HTTP status codes
- Request and response
- Playwright APIRequestContext
- Creating API requests
- Request headers, query parameters and request body
- Authentication and tokens
- API assertions
- JSON response validation
- Validating status codes and response data
AI-Assisted Playwright Automation
- Introduction to AI in test automation
- AI-assisted automation workflow
- AI-assisted Playwright script generation
- AI-assisted locator identification
- AI-assisted page object creation
- AI-assisted test data generation
- AI-assisted code review and refactoring
- AI-assisted test failure analysis and debugging
- Using Cursor / GitHub Copilot for automation
- AI-assisted test case to automation conversion
- Validating AI-generated automation
- Common AI automation mistakes and limitations
Real-World Playwright Automation Project
- Application and automation scope understanding
- Automation scenario selection
- Playwright project setup
- Automation framework and Page Object Model implementation
- Test data and configuration
- Automating key application flows
- UI automation, API automation and UI + API hybrid scenarios
- Test execution and debugging
- Reporting and visual validation
- GitHub integration and CI/CD execution
- Parallel test execution
- AI-assisted automation
- Final test execution and project review
- Automation best practices and improvements
Performance testing course syllabus
5 weeks and 25 hours of classes across 9 chapters, about 40% concept and 60% hands-on labs. Every chapter ends with a lab.
Introduction to Performance Testing2.5 hours
- What performance testing is and why it matters
- Types: load, stress, spike, soak (endurance), scalability, volume
- Non-functional requirements: SLAs, response-time targets, expected users and throughput
- Installing Java and JMeter; Plugins Manager
- JMeter UI tour
- Components: Test Plan, Thread Group, Sampler, Config Element, Pre/Post Processor, Assertion, Timer, Listener, Logic Controller
- Execution order and scoping rules
- Lab: first test plan with one HTTP Request against blazedemo.com
Recording and Playback3 hours
- HTTP(S) Test Script Recorder; proxy setup in the browser
- Installing the JMeter root CA certificate for HTTPS recording
- Recording filters: exclude static resources and third-party domains
- Config elements: HTTP Request Defaults, Cookie Manager, Header Manager, Cache Manager
- Parameterisation with CSV Data Set Config (sharing mode, recycle, stop on EOF)
- Replaying the recording and spotting why it fails
- Lab: record a login and booking flow, parameterise users from CSV
Building Robust Test Scripts4.5 hours
- Correlation: finding dynamic values (session IDs, CSRF tokens, auth tokens)
- Extractors: Regular Expression, JSON, Boundary, CSS Selector
- Assertions: Response, JSON, Duration, Size
- Logic controllers: Transaction, If, Loop, While, Once Only
- Timers and think time: Constant, Uniform Random, Gaussian Random
- Variables vs properties; functions __P(), __Random(), __time(), __UUID()
- JSR223 Groovy basics for small pre/post-processing tasks
- Debugging: View Results Tree, Debug Sampler, jmeter.log
- Lab: a fully correlated, asserted, transaction-grouped script that replays clean with 5 users
Execution and Results Analysis3 hours
- Non-GUI mode: jmeter -n -t test.jmx -l results.jtl -e -o report/
- Passing users, ramp-up and duration as properties with -J
- Listeners: when to use them, and why to disable them under load
- Key metrics: response time, latency, connect time, throughput, error rate
- Percentiles (90th, 95th, 99th) and why averages mislead
- HTML dashboard report walkthrough
- Reading graphs to spot bottlenecks: response time vs active threads, throughput plateau, error spikes
- Lab: a 25-user run in non-GUI mode; generate and interpret the dashboard
Workload Modelling and Advanced JMeter3 hours
- Workload modelling: Little's Law, converting business volume into users and throughput
- Thread groups: standard, Concurrency, Ultimate, Arrivals
- Throughput control: Constant Throughput Timer, Throughput Shaping Timer
- Server-side monitoring during tests: CPU, memory, DB, APM and log tools
- Real-time monitoring with Backend Listener, InfluxDB and Grafana (demo)
- JMeter tuning: heap size, lean listeners, CSV results only
- Distributed testing (controller and workers) as a lead-in to cloud tools
- JDBC Request sampler (demo)
- Lab: model a workload from given business numbers and build matching thread groups
Load Testing with RedLine132 hours
- RedLine13 overview and AWS account linking
- Uploading a JMeter plan, CSV and plugins
- Choosing regions, instance size and number of servers
- Passing properties to the test
- Running, monitoring and downloading results
- Cost awareness: AWS instance charges
- Lab: run the Chapter 5 script on RedLine13 from 2 regions
Load Testing with BlazeMeter2 hours
- BlazeMeter overview and free-tier limits
- BlazeMeter Chrome recorder as an alternative to the JMeter proxy
- Uploading and configuring a JMeter test
- Load configuration and geo-distribution
- Reports: timeline, request stats, errors, comparison between runs
- Lab: run the same script on BlazeMeter and compare with the RedLine13 run
Best Practices and Group Project3.5 hours
- Script best practices: naming, modular Test Fragments, reusable config, version control
- Refactoring a messy recorded script
- Common scenarios: login storm, search-heavy, checkout, API-only
- CI/CD integration demo: run JMeter from Jenkins or GitHub Actions with pass/fail thresholds
- Writing the performance test report: summary, findings, bottlenecks, recommendations
- Group project: requirements → workload model → script → execution → report; peer review
Final Assessment and Wrap-Up1.5 hours
- Individual practical test: script, run and analyse a given scenario
- Report review and feedback
- Q&A, next steps and further learning resources
Software testing course syllabus
Manual and Automation in one programme: all 8 Manual Testing modules, then all 11 Automation Testing modules.
Manual · Fundamentals of Software Testing
- Course overview and planning discussion
- Software Development Life Cycle
- Introduction to Software Testing
- Difference between QA and QC
- Difference between verification and validation
Manual · STLC & Principles of Software Testing
- Software Testing Life Cycle (STLC)
- Principles of Software Testing
- Testing Process
Manual · Testing Levels, Types & Techniques
- Levels of software testing
- Types of testing
- Static and dynamic testing
- Black-box and white-box testing techniques
- Overview of non-functional types of testing
Manual · Test Creation to Bug Report
- Test scenario and test case creation
- Test case review activities
- Test environment and test execution
- Defect / bug reporting
Manual · Software Testing Project (Practical)
- What is a domain? Types of domains
- Software testing tools
- Bug tracking and test case management tools (Jira)
- Browser developer tools / console usage
Manual · API Testing (Practical)
- What is an API?
- SOAP vs REST API
- API testing using Postman
- API methods, status codes and responses
- Basic database understanding
Manual · AI Basics for Software Testers
- Introduction to Artificial Intelligence (AI)
- AI vs test automation
- Writing test cases using AI
- Reviewing requirements / PRD using AI
- Identifying missing and edge scenarios using AI
- Bug reporting and documentation using AI
- Tools: ChatGPT or similar AI tools
Manual · Certification, Resume & Interview Guidance
- Software testing certification guidance
- Resume preparation
- Mock tests and mock interviews
- Career guidance and doubt solving
Automation · Introduction to Test Automation
- Course overview and automation roadmap
- Introduction to test automation
- Manual testing vs test automation
- Benefits and limitations of automation
- When to automate
- Automation testing process
- Automation tool selection
- Introduction to Playwright
- Playwright vs Selenium
- Playwright features and supported browsers
- Real-world automation use cases
Automation · TypeScript Basics for Automation
- Introduction to TypeScript
- Environment setup
- Variables and data types
- Operators
- Conditional statements
- Loops
- Functions
- Arrays and objects
- Classes and objects
- Interfaces and types
- Promises
- Async/await
- TypeScript concepts required for Playwright
Automation · Playwright Fundamentals
- Playwright installation and project setup
- Playwright project structure
- package.json
- playwright.config.ts
- Browser, browser context and page
- First Playwright test
- Playwright test runner
- Running tests
- Headed and headless execution
- Test hooks
- Test configuration
Automation · Locators & Web Elements
- Understanding locators
- Locator strategy
- Playwright recommended locators
- getByRole, getByText, getByLabel, getByPlaceholder, getByTestId
- CSS selectors
- XPath
- Locator chaining and filtering
- Handling multiple elements
- Dynamic elements
- Text fields and buttons
- Checkboxes and radio buttons
- Dropdowns
- Tables
- File upload and download
- Iframes
- Alerts / dialogs
- Multiple tabs / windows
Automation · Test Execution, Assertions & Test Data
- Playwright auto-waiting
- Handling dynamic elements
- Wait for elements, URL, load state and response
- Playwright assertions
- Web-first assertions
- Text and visibility assertions
- URL and attribute assertions
- Soft assertions
- Test organisation
- Test tags and annotations
- Test data management
- JSON and CSV test data
- Data-driven testing
- Parameterisation
- Fixtures
- Retries and timeouts
Automation · Page Object Model & Automation Framework
- Introduction to Page Object Model
- Benefits of POM
- Creating page classes
- Locators in page objects
- Reusable methods
- Base page
- Fixtures
- Test data management
- Environment configuration
- Framework folder structure
- Reusable utilities
- Automation framework best practices
- Maintainable automation framework
Automation · Debugging, Reporting & Visual Testing
- Playwright Inspector
- Debugging Playwright tests
- Screenshots
- Video recording
- Trace Viewer
- Test execution results
- HTML reports
- Debugging failed tests
- Understanding test failures
- Basic flaky test handling
- Introduction to visual regression testing
- Screenshot comparison
- toHaveScreenshot()
Automation · Git, CI/CD & Parallel Execution
- Git for automation: repository setup, branch, commit, push and pull
- GitHub and basic collaboration workflow
- Introduction to CI/CD
- GitHub Actions
- Running Playwright tests in CI
- Scheduled test execution
- Environment variables
- Test reports and artifacts
- Screenshots / videos / traces in CI
- Why parallel execution is required
- Playwright workers and running tests in parallel
- Basic understanding of sharding
- Introduction to Jenkins
- Running Playwright tests in Jenkins
- Jenkins vs GitHub Actions
Automation · API Automation with Playwright
- Introduction to API testing
- UI testing vs API testing
- Why API automation is required
- HTTP methods: GET, POST, PUT and DELETE
- HTTP status codes
- Request and response
- Playwright APIRequestContext
- Creating API requests
- Request headers, query parameters and request body
- Authentication and tokens
- API assertions
- JSON response validation
- Validating status codes and response data
Automation · AI-Assisted Playwright Automation
- Introduction to AI in test automation
- AI-assisted automation workflow
- AI-assisted Playwright script generation
- AI-assisted locator identification
- AI-assisted page object creation
- AI-assisted test data generation
- AI-assisted code review and refactoring
- AI-assisted test failure analysis and debugging
- Using Cursor / GitHub Copilot for automation
- AI-assisted test case to automation conversion
- Validating AI-generated automation
- Common AI automation mistakes and limitations
Automation · Real-World Playwright Automation Project
- Application and automation scope understanding
- Automation scenario selection
- Playwright project setup
- Automation framework and Page Object Model implementation
- Test data and configuration
- Automating key application flows
- UI automation, API automation and UI + API hybrid scenarios
- Test execution and debugging
- Reporting and visual validation
- GitHub integration and CI/CD execution
- Parallel test execution
- AI-assisted automation
- Final test execution and project review
- Automation best practices and improvements
Get the syllabus PDF
We send it on WhatsApp. No spam calls.
Stay in the loop
Get new batch dates on WhatsApp. One message when a batch opens, nothing else.
By subscribing you agree to receive WhatsApp messages from Tester Academy. Read our Privacy policy.

