Automation Testing with Playwright

Master modern end-to-end web and API automation using JavaScript/TypeScript

Course Content

TypeScript

  • Introduction to Typescript
  • Variables & Datatypes
  • Type inference & Type assertion
  • Decision making statements
  • Iterative statements
  • Functions & Arrow functions
  • Function overloading
  • Interfaces
  • Classes
  • Data Modifiers
  • Static & Read-Only

Introduction to Playwright

  • Introduction to playwright features
  • Installing VS code & node.js
  • Setting up playwright environment

Getting Started with Playwright Automation

  • Create first npm project & install playwright dependencies
  • Importance of Playwright Test Annotation and async & await understanding
  • Browser context and Page fixtures in Playwright

Playwright Configuration & Execution

  • Importance of Playwright configuration file and its details to run the tests
  • Running Playwright tests in multiple browsers - chrome, Firefox

Playwright Basic Methods for Web Automation

  • Locators supported by playwright and how to type into elements on page
  • Extracting the text from browser and inserting valid expect assertions in test
  • How to work with locators which extract multiple web elements in page
  • Understanding how wait mechanisms works if list of elements are returned
  • Techniques to wait dynamically for new page in Service based applications

Handling UI Components & Assertions

  • Handling static select dropdown options
  • Selecting radio buttons, Checkboxes and implement expect assertions
  • Using async await with Assertions and understand validating the attributes

Navigation, Debugging & Trace Viewers

  • Handling Child windows & Tabs with Playwright by switching browser
  • Playwright inspector and how to debug the playwright script
  • Codegen tool to record & Playback with generated automation script
  • Detailed view of Test Traces, HTML reports, logs & Screenshots for test results

Handling Dialogs, Frames & Event Listeners

  • How to validate if element is hidden or displayed mode with Expect assertions
  • How to automate Java/JavaScript Alert popups with Playwright
  • How to handle & automate frames with Playwright

API Testing & Hybrid Web-API Integration

  • Understanding the importance of API integration calls for Web tests
  • Playwright request method to make API calls and grab response
  • Parsing API response & passing token to browser local storage with Playwright
  • Place order API to create order and bypass the flow in UI with mix of web/API
  • End to end validation with mix of API & Web concepts - Reduce test time
  • Refactor API calls from utils folder and isolate from Web test logic

Visual Testing & Page Object Model (POM)

  • Capture screenshots with playwright page & partial Element level – Demo
  • What is visual testing & How to perform it using Playwright
  • Page object pattern & Importance of its implementation
  • Creating Page objects and action methods for end to end Script - Part 1
  • Creating Page objects and action methods for end to end Script - Part 2
  • Assignment Solution – Converting Page object Model Project

Data-Driven Testing & Advanced Configuration

  • How to drive the data from external json files to playwright tests
  • Implementing Parameterization in running tests with different data sets
  • How to pass test data as fixture by extend test annotation behavior
  • Various options in use property & setting up Project configurations
  • View port Property on emulating browser to mobile devices with playwright
  • Screenshots, Videos, Traces & SSL certification options setting in Config file

Reporting & Script Triggers

  • How to generate html and allure reporting
  • How to create custom scripts to trigger the tests from package.json