Skip to content
L-SYSTEM

recommendedintermediate

Playwright Test Automation for QA Engineers

A full working course on Playwright with TypeScript for QA engineers in large professional-services firms (Big 4 and similar). It covers the same ground as a comprehensive "zero to hero" Playwright curriculum: TypeScript essentials for test code, installation and project layout, running and debugging (CLI, UI mode, Inspector, codegen, Trace Viewer), locators and the strictness rule, web-first assertions, auto-waiting and the timeout hierarchy, every common UI component (inputs, checkboxes, radios, dropdowns, tooltips, dialogs, tables, date pickers, sliders, iframes), the Page Object Model and a scalable page architecture, custom fixtures, configuration and projects, environment variables and mobile emulation, authentication reuse through storageState, artifacts and reporters, visual regression testing, API requests, network interception and mocking, parallelism, retries, tags and flakiness control, Docker and CI on GitHub Actions. Every topic is taught the same way: the problem that exists without the feature, the feature that solves it, and the price you pay for using it. The course is written for people who will maintain a suite on a client engagement for years, not for people writing a demo test once — so review criteria, evidence for audit, secret handling and cost of maintenance are part of the material, not an appendix. By the end you should be able to build and maintain a Playwright suite unaided, and to pass an external certification-style exam on the same syllabus.

Path through the course · 27 units

any order · units can be taken in any order you likeView: map · steps

  1. Stage 1

    ~1 h

  2. Stage 2

    ~2.5 h

    can start · Core

  3. Stage 3

    ~1.5 h

  4. Stage 4

    ~1 h

  5. Stage 5

    ~1 h

  6. Stage 6

    ~1.5 h

  7. Stage 7

    ~2.5 h

    can start · Core

  8. Stage 8

    ~2.5 h

    can start

  9. Stage 9

    ~8.5 h

    can start

  10. Stage 10

    ~4 h

    can start

  11. Stage 11

    ~1.5 h

  12. Stage 12

    ~1.5 h

  13. Stage 13

    ~3 h

    can start

  14. Stage 14

    ~1.5 h

  15. Stage 15

    ~3 h

    can start · Review

  16. Exam

    closed

    • final

      Exam

The path in words
  • Stage 1 · Why Playwright, and what it actually doescan start; ~1 h
  • Stage 2 · The TypeScript you actually need for test codecan start; ~1.5 h
  • Stage 2 · Installing Playwright and laying out the projectcan start; ~1 h
  • Stage 3 · Running and debugging: CLI, UI mode, Inspector, codegen, Trace Viewercan start; ~1.5 h
  • Stage 4 · The anatomy of a test: describe, hooks, steps, annotationscan start; ~1 h
  • Stage 5 · Locator syntax: CSS, text, XPath and chainingcan start; ~1 h
  • Stage 6 · User-facing locators and the strictness rulecan start; ~1.5 h
  • Stage 7 · Filtering, relationships and lists of elementscan start; ~1 h
  • Stage 7 · Assertions and extracting valuescan start; ~1.5 h
  • Stage 8 · Auto-waiting and the timeout hierarchycan start; ~1.5 h
  • Stage 8 · Text inputs, keyboard and mousecan start; ~1 h
  • Stage 9 · Checkboxes, radios, dropdowns and tooltipscan start; ~1.5 h
  • Stage 9 · Dialogs, alerts and web tablescan start; ~1.5 h
  • Stage 9 · Date pickers, sliders and iframescan start; ~1.5 h
  • Stage 9 · Page Object Model: the first objectscan start; ~1.5 h
  • Stage 9 · Evidence: screenshots, video, traces and reporterscan start; ~1 h
  • Stage 9 · API requests with Playwrightcan start; ~1.5 h
  • Stage 10 · Page architecture: base helpers and a page managercan start; ~1.5 h
  • Stage 10 · Visual regression testingcan start; ~1 h
  • Stage 10 · Network interception and mockingcan start; ~1.5 h
  • Stage 11 · Fixtures: built-in, custom, and worker-scopedcan start; ~1.5 h
  • Stage 12 · Configuration, projects, environments and mobile emulationcan start; ~1.5 h
  • Stage 13 · Authentication once: setup projects, storageState and API logincan start; ~1.5 h
  • Stage 13 · Parallelism, retries, tags and flakinesscan start; ~1.5 h
  • Stage 14 · Docker and continuous integrationcan start; ~1.5 h
  • Stage 15 · Confusion pairs and exam readinesscan start; ~1.5 h
  • Stage 15 · Delivery practice: strategy, review and evidence on an engagementcan start; optional; ~1.5 h

Programme · 27 units

1Why Playwright, and what it actually does

Explain the two failure modes of legacy UI automation — timing flakiness and driver overhead — and how Playwright's architecture removes each

~1 hcan start
2The TypeScript you actually need for test code

Read and write the JavaScript constructs that appear in every Playwright test: const/let, arrow functions, template literals, destructuring, objects and arrays

~1.5 hcan start
3Installing Playwright and laying out the project

Install Playwright into a new repository and into an existing front-end repository without breaking either

~1 hcan start
4Running and debugging: CLI, UI mode, Inspector, codegen, Trace Viewer

Run the suite, a file, a single test and a tagged subset from the command line

~1.5 hcan start
5The anatomy of a test: describe, hooks, steps, annotations

Structure a spec file with describe blocks and the four hooks, and say when each hook runs relative to workers

~1 hcan start
6Locator syntax: CSS, text, XPath and chaining

Read the DOM vocabulary a locator depends on: tag, attribute, class, id, text node, parent and child

~1 hcan start
7User-facing locators and the strictness rule

Apply the locator priority order: role, label, placeholder, text, alt, title, test id, CSS or XPath last

~1.5 hcan start
8Filtering, relationships and lists of elements

Use filter() with hasText, hasNotText, has and hasNot to narrow a set by content or by a descendant

~1 hcan start
9Assertions and extracting values

Distinguish web-first assertions from generic ones and default to the former

~1.5 hcan start
10Auto-waiting and the timeout hierarchy

List the actionability checks and explain which action requires which of them

~1.5 hcan start
11Text inputs, keyboard and mouse

Choose between fill, clear and pressSequentially, and say when character-by-character typing is required

~1 hcan start
12Checkboxes, radios, dropdowns and tooltips

Use check, uncheck and setChecked correctly, and justify force: true on a visually hidden native input

~1.5 hcan start
13Dialogs, alerts and web tables

Handle native alert, confirm, prompt and beforeunload dialogs, and explain Playwright's default behaviour

~1.5 hcan start
14Date pickers, sliders and iframes

Automate a date picker by typing where possible and by navigating the calendar where not, using computed dates rather than literals

~1.5 hcan start
15Page Object Model: the first objects

State the specific duplication a page object removes and the specific change it makes cheap

~1.5 hcan start
16Page architecture: base helpers and a page manager

Extract shared behaviour into a shallow base class without building an inheritance tree

~1.5 hcan start
17Fixtures: built-in, custom, and worker-scoped

Name the built-in fixtures and say what each provides

~1.5 hcan start
18Configuration, projects, environments and mobile emulation

Use projects to run the same tests across browsers, devices, roles and environments

~1.5 hcan start
19Authentication once: setup projects, storageState and API login

Build a setup project that authenticates once and saves the session to storageState

~1.5 hcan start
20Evidence: screenshots, video, traces and reporters

Capture screenshots of the page, of an element and into a buffer, and attach them to the report

~1 hcan start
21Visual regression testing

Write a screenshot comparison with toHaveScreenshot and manage the baseline files

~1 hcan start
22API requests with Playwright

Use the request fixture to write pure API tests and assert on status, headers and body

~1.5 hcan start
23Network interception and mocking

Intercept requests with page.route and fulfil, abort or modify them

~1.5 hcan start
24Parallelism, retries, tags and flakiness

Configure workers and fullyParallel, and explain what a worker is

~1.5 hcan start
25Docker and continuous integration

Run the suite in the official Playwright container and say why the image version must match the package version

~1.5 hcan start
26Confusion pairs and exam readiness

Separate the pairs of Playwright concepts that are most often confused

~1.5 hcan start
27Delivery practice: strategy, review and evidence on an engagement

Decide what to automate and at which level, and defend the decision to a client

~1.5 hcan start