(Playwright, Python, Pytest, Page Object Model, UI & API Testing, CI/CD, GitHub Actions, ChatGPT, AI Chatbots, Ollama & LLM Evaluation)
Start with Python fundamentals and build up to a complete, production-grade Playwright automation framework covering UI, API, CI/CD, chatbot automation, and local LLM-based AI testing — all in a structured schedule.
Variables, loops, functions, OOP, file & JSON handling — everything a tester needs, nothing extra.
Architecture, browser/context/page management, locators (CSS, XPath, Role, Text), dynamic elements, and auto-waiting.
Web-first assertions, user interactions, file uploads/downloads, and techniques for stabilizing flaky tests.
Fixtures, fixture scopes, parameterization, parallel execution with pytest-xdist, and environment/secrets management.
Build reusable page classes, base test/base page architecture, and implement clean, maintainable framework design.
APIRequestContext, HTTP methods, authentication, and hybrid UI + API automation workflows.
Multi-browser execution, mobile emulation, geolocation, network interception/mocking, and the Trace Viewer.
Automate chat UIs, handle streaming responses, and automate voice input by intercepting the Web Speech API.
Set up a zero-cost local AI testing lab and evaluate chatbot responses using the LLM-as-a-Judge pattern.
Convert Ollama's AI evaluations into PyTest PASS/FAIL assertions for text and voice chatbot responses.
Integrate the full Playwright + PyTest + AI/LLM framework into pipelines and publish automated test reports.
Build a complete framework covering UI, API, multi-browser, chatbot, and AI-based PASS/FAIL evaluation.
The weekday batch schedule makes this perfect for working professionals. All levels welcome, from beginners to experienced engineers.
No prior Python knowledge needed. The course starts with Python essentials tailored for testers — only what you need, taught in the context of automation.
You don't just write test scripts — you build a complete framework with POM, PyTest, fixtures, data-driven execution, and CI/CD from scratch.
Automate real chatbot interfaces — handle streaming responses, typing indicators, mock audio input, and the Web Speech API for voice.
Build a zero-cost AI testing lab, evaluate non-deterministic chatbot responses with the LLM-as-a-Judge pattern, and wire it into PyTest assertions.
Every session includes a real assignment. From writing your first Python function to building an end-to-end AI-powered test suite — practice every step of the way.
Experience Tripura's hands-on teaching style before enrolling — completely free, no commitment required.
A structured, progressive curriculum — from Python basics through Playwright automation, framework development, advanced features, and a complete capstone project.
| Topic | What You'll Learn & Build |
|---|---|
| Python Setup & Fundamentals | Installing Python and configuring VS Code · Python virtual environments · Variables, Data Types & Operators · Conditional statements & Loops · Functions and parameters |
| Python OOP for Test Automation | Classes, Objects & Constructors · Encapsulation & Inheritance · Reusable methods and utilities · Why OOP matters for automation frameworks |
| File & Test Data Handling | Reading and writing files · JSON handling using Python standard libraries · Creating reusable test data · Importing modules and packages · Structuring Python automation utilities |
Build a Python utility script for generating and validating test data · Create reusable Python classes for test data and common automation utilities · Read JSON test data and create a utility to retrieve user information.
| Topic | What You'll Learn & Build |
|---|---|
| Getting Started with Playwright | What is Playwright and why use it for automation? · Playwright architecture · Installing Playwright for Python · Sync vs Async Playwright APIs · Browser, BrowserContext and Page · Launching Chromium, Firefox and WebKit · Headed vs Headless execution |
| Browser, Context & Page Management | Understanding Browser/BrowserContext/Page lifecycle · Multiple pages and browser tabs · Popups and new windows · Handling frames and iframes · Screenshots and video recording |
| Locators & Web Elements | Understanding Playwright locators · Role-based locators, get_by_role(), get_by_text() · CSS selectors · XPath selectors · Locator chaining · Handling dynamic elements |
| Dynamic Web Elements & Auto-Waiting | Dynamic tables, dropdowns, checkboxes and radio buttons · Handling changing UI elements · Playwright auto-waiting mechanism · Understanding locator stability |
Create your first Playwright script to launch a browser, navigate and validate · Automate a scenario involving multiple tabs and an iframe · Build robust locators for a dynamic web application · 🛠 Mini Project: Automate a dynamic web page containing tables, dropdowns and dynamically loaded elements.
| Topic | What You'll Learn & Build |
|---|---|
| User Actions & Interactions | click(), fill(), press() · Keyboard actions · Mouse actions & hover · Scrolling · File uploads and downloads |
| Assertions & Validations | Playwright Web-First Assertions · Text, visibility, attribute and URL validation · Soft assertions · Custom assertions |
| Building Stable Automation | Understanding Playwright's automatic waiting · Handling dynamic loading · Waiting for elements and pages · Handling timeouts · Reducing flaky tests · Debugging failed interactions |
Automate a complete user workflow involving forms, uploads and downloads · Create a validation suite containing positive and negative assertions · 🛠 Mini Project: Stabilize a flaky end-to-end test using proper locators, assertions and synchronization.
| Topic | What You'll Learn & Build |
|---|---|
| PyTest Fundamentals | Introduction to PyTest · Creating and executing tests · Test discovery · Assertions · Test organization, pytest.ini · Test markers |
| Fixtures & Test Setup | Understanding PyTest fixtures · Fixture scopes: Function, Class, Module, Session · conftest.py · Setup and teardown · Browser and context fixtures |
| Parameterization & Parallel Execution | pytest.mark.parametrize · Data-driven testing · Running multiple test scenarios · Parallel execution using pytest-xdist |
| Environment & Secrets Management | Environment variables · .env files · Managing usernames, passwords and API credentials · Separating configuration from test code |
🛠 Mini Project: Build a reusable PyTest framework with fixtures, parameterization, parallel execution and environment configuration.
| Topic | What You'll Learn & Build |
|---|---|
| Page Object Model (POM) | What is Page Object Model? · Benefits of POM · Creating Page classes · Reusable page methods · Separating locators from test cases |
| Advanced Framework Architecture | Base Page & Base Test · Page inheritance · Helper utilities · Reusable methods · Test data management · Framework folder structure |
| Clean Automation Framework Design | Separation of responsibilities · Managing locators & test data · Utility functions · Configuration management · Designing maintainable automation frameworks |
🛠 Mini Project: Build a scalable Page Object Model framework with reusable utilities and clean architecture.
| Topic | What You'll Learn & Build |
|---|---|
| API Testing Fundamentals | Understanding API testing · HTTP methods: GET, POST, PUT, DELETE · APIRequestContext · Sending API requests · Validating status codes and responses |
| API Authentication & Validation | Authentication headers · Bearer Token authentication · Basic authentication · Request headers and parameters · Request body · Response body validation |
| Hybrid UI + API Automation | Using APIs for test data setup · Creating application state through APIs · Performing UI validation · API-based cleanup · Combining API and UI automation |
🛠 Mini Project: Create a hybrid UI + API automation workflow.
| Topic | What You'll Learn & Build |
|---|---|
| Multi-Browser & Session Management | Chromium, Firefox and WebKit · Multi-browser execution · Storage state & session reuse · Authentication state |
| Mobile Emulation & Geolocation | Mobile device emulation · Viewport configuration · Device profiles · Responsive testing · Geolocation testing & permission handling |
| Network Interception & Mocking | Understanding network interception · Request interception · Response mocking · Blocking network requests · Simulating API failures |
| Debugging & Trace Viewer | Playwright Trace Viewer · Analyzing failed tests · Debugging automation failures · Understanding test execution traces |
🛠 Mini Project: Build network-mocked tests with session reuse and execute them across multiple browsers.
| Topic | What You'll Learn & Build |
|---|---|
| Chatbot UI Automation | Understanding chatbot automation challenges · Targeting dynamic chat inputs · Automating send buttons · Extracting chatbot responses · Handling dynamically generated & streaming messages |
| Dynamic Response Handling | Waiting for chatbot responses · Handling typing indicators · Detecting response completion · Managing non-deterministic response timing · Creating reusable chatbot automation methods |
| Voice Chatbot Automation | Handling browser microphone permissions · Suppressing microphone permission popups · Working with browser media permissions · Injecting mock .wav audio streams · Automating voice input · Intercepting Web Speech API · Capturing and validating spoken output (window.speechSynthesis) |
🛠 Mini Project: Build a reusable ChatbotPage object capable of automating text prompts, streaming mock audio inputs and extracting text/spoken outputs.
| Topic | What You'll Learn & Build |
|---|---|
| Building a Local AI Testing Lab | Introduction to LLM-based testing · Challenges of testing non-deterministic AI responses · Why traditional assertions may not be enough · Setting up Ollama locally · Running a local LLM · Creating a zero-cost AI testing environment |
| LLM-as-a-Judge Evaluation | Understanding the LLM-as-a-Judge pattern · Evaluating chatbot responses using an LLM · Designing evaluation prompts · Semantic response validation · Expected vs actual response comparison · Structured JSON evaluation · Generating PASS/FAIL results with reasoning |
🛠 Mini Project: Build an ollama_evaluator.py script that evaluates chatbot responses and returns structured assertion results.
| Topic | What You'll Learn & Build |
|---|---|
| Building the AI Testing Pipeline | PyTest browser context fixtures · Media stream configuration · Combining Playwright actions with response extraction · Sending chatbot responses to Ollama · Converting AI evaluation into PyTest assertions · Text and voice verification |
| End-to-End AI Test Execution | Automating ChatGPT/Gemini-style interfaces · Executing chatbot prompts · Extracting generated responses · Evaluating responses using Ollama · Generating PyTest PASS/FAIL results |
🛠 Mini Project: Build a complete end-to-end AI automation suite — Prompt → Chatbot Response → Response Extraction → Ollama Evaluation → PASS/FAIL Assertion.
| Topic | What You'll Learn & Build |
|---|---|
| Automating Test Execution | Git and GitHub fundamentals · Introduction to GitHub Actions · Creating CI/CD workflows · Running Playwright tests automatically · Managing environment variables and secrets · Configuring test execution in CI · Running automated tests on Pull Requests · Publishing Playwright reports and test artifacts · Understanding GitHub Actions execution and limitations |
🎯 Final Deliverable: A GitHub Actions workflow that automatically executes the Playwright + PyTest + AI/LLM testing framework and publishes the test results.
| Topic | Details |
|---|---|
| Complete Automation Framework | ✅ Playwright with Python · ✅ PyTest · ✅ Page Object Model · ✅ UI Automation · ✅ API Testing · ✅ Multi-browser Testing · ✅ Mobile Emulation · ✅ Network Mocking · ✅ Text Chatbot Automation · ✅ Voice Chatbot Automation · ✅ Streaming Response Handling · ✅ Ollama Local LLM · ✅ LLM-as-a-Judge · ✅ AI-based PASS/FAIL Evaluation · ✅ PyTest Assertion Pipeline · ✅ GitHub Actions CI/CD · ✅ Automated Test Reports |
🎯 Final Project: Build a complete Playwright + PyTest + Ollama AI Testing Framework capable of automating and intelligently evaluating text and voice chatbot interactions.
Passionate Automation Testing professional with extensive experience in Web Automation, Playwright, Selenium, and Python-based Test Frameworks.
Over 8 years, Tripura has worked across multiple real-world automation projects, building scalable and maintainable frameworks for UI and API validation using modern tools and best practices. Having trained and mentored 300+ professionals globally and conducted over 15 successful corporate and public training batches, she is known for transforming learners into confident automation engineers ready for real-world challenges.
Known for her hands-on and example-driven teaching style, she simplifies even complex automation concepts — from synchronization to CI/CD integration — making learning both engaging and practical. What truly sets her apart is her ability to bridge theory with real-world implementation. Learners gain the confidence to design complete Playwright automation frameworks using Python, integrate them with GitHub Actions, and apply these skills effectively in live projects.
Every participant who successfully completes the training receives an official certificate from Isha Training Solutions — recognised by industry professionals.
Sample certificate — your name will be printed upon completion
Real feedback from QA professionals and automation engineers who completed this training with Tripura.
One of the best decisions I've made for my testing career. If you're serious about learning modern, fast and reliable test automation in 2026, look no further. Isha Training Solution's Playwright with Python course is easily worth 5+ stars.
This was the best Playwright course I've attended! You explained concepts clearly and made the sessions very engaging. You demonstrated exceptional patience in addressing queries and were always willing to repeat topics. Highly recommend this training.
Thank you, Tripura, for your time and effort in delivering the Playwright Automation training. You explained the concepts clearly with practical examples, which made it easier to understand. Overall, it was a good training session.
Her patience is excellent — she explains until we get the thing cleared. As a Performance Tester wanting to learn Playwright with Python, this was perfect. First time I listened to all classes without skipping. Trainer is really good at resolving queries.
Excellent sessions! Her step-by-step approach and real-time demonstrations made Playwright automation concepts easy to understand and apply. The way she explained Python integration and framework setup was simply outstanding.
Tripura's Playwright Automation course was a complete game-changer! She covered everything — from fundamentals to advanced framework development — with real-world insights and practical use cases. Highly recommended for anyone looking to excel in test automation.
I started as a beginner in automation, but Tripura made each concept easy to grasp. Her real-time examples on test execution, reporting, and debugging gave me a strong foundation in Playwright and Python automation.
The sessions were extremely engaging and insightful. Her focus on code reusability, framework design, and debugging techniques greatly enhanced my understanding of end-to-end automation.
One of the best trainers I've learned from! Tripura's course perfectly blended theory with hands-on implementation. She ensures every student understands not just how to automate, but why each step matters in building a scalable framework.
A real WhatsApp message from a student who landed a job at Infosys after this training.
These videos are from a previous batch — watch to experience the teaching style and course depth. For the current batch, attend the live demo on the scheduled date.
To maintain the quality of our training and ensure a smooth learning experience for all participants, we do not allow batch repetition or switching between courses.
To reiterate, moving from one course to another or shifting from one trainer to another (even if it is the same course) is not possible. Changing batches or trainers in any form is strictly not permitted.
We request all learners to attend the scheduled sessions regularly and make the most of their learning journey. Thank you for your understanding and continued support.