Testing mode Features and test data can change before launch.
BeginnerTest automation

TypeScript and Playwright for QA

Start with no coding experience. Learn TypeScript through browser exercises, then build an npm Playwright project against a deterministic local application.

TypeScriptPlaywrightBrowser automationTest designDebuggingContinuous integration

What you’ll be able to do.

01

Write strict TypeScript that represents test data and decisions

02

Build isolated Playwright tests with resilient locators and web assertions

03

Diagnose failures with traces, reports, and controlled network behavior

04

Run type checks and browser tests through npm and continuous integration

11 focused modules.

42 lessons total
01TypeScript source and runtime evidenceStart with the language, practice worker, files, and a small typed result.
  1. ↳Start your TypeScript and Playwright learning journeyLesson
  2. ↳What programming is and how code runsLesson
  3. ↳Tools, files, and a first projectLesson
  4. ↳Values, variables, and console evidenceLesson
  5. ↳Build a typed result summaryLesson
02Types and decisionsModel test inputs and make explicit decisions from observations.
  1. ↳Primitive types and inferenceLesson
  2. ↳Comparisons and logical operatorsLesson
  3. ↳Conditions and type narrowingLesson
  4. ↳Classify boundary outcomesLesson
03Reusable checks with functionsCreate focused functions that express repeatable QA checks.
  1. ↳Parameters and return typesLesson
  2. ↳Optional and default parametersLesson
  3. ↳Arrow functions and callbacksLesson
  4. ↳Create an assertion helperLesson
04Collections and test dataRepresent related data and build controlled test cases.
  1. ↳Arrays and iterationLesson
  2. ↳Objects, interfaces, and type aliasesLesson
  3. ↳Literal unions and discriminated dataLesson
  4. ↳Build deterministic test dataLesson
05Asynchronous QA workflowsHandle external data, waiting, and failures with explicit control.
  1. ↳JSON and unknown inputLesson
  2. ↳Promises and async functionsLesson
  3. ↳Errors, timeouts, and cleanupLesson
  4. ↳Build a typed asynchronous utilityLesson
06Projects and Playwright setupPrepare a strict TypeScript project and a local test target.
  1. ↳ES modules and importsLesson
  2. ↳npm scripts and strict TypeScriptLesson
  3. ↳Initialize PlaywrightLesson
  4. ↳Build the local QA ShopLesson
07First browser testsWrite user-focused tests with resilient locators and assertions.
  1. ↳Test, expect, and pageLesson
  2. ↳Locators by user meaningLesson
  3. ↳Automatic waiting and web assertionsLesson
  4. ↳Lab: Search and checkoutLesson
08Test design and isolationKeep tests independent and data aligned with product risk.
  1. ↳Browser contexts and isolationLesson
  2. ↳Hooks and fixturesLesson
  3. ↳Deterministic data and stateLesson
  4. ↳Lab: Build a risk-based journey suiteLesson
09Reliable execution and diagnosisConfigure useful coverage and investigate failures with evidence.
  1. ↳Projects and configurationLesson
  2. ↳UI Mode, Inspector, traces, and reportsLesson
  3. ↳Network control and observationLesson
  4. ↳Lab: Remove flaky waitsLesson
10Maintain and deliver a browser suiteReview helper boundaries, type checking, and continuous integration.
  1. ↳Helpers and page objects with restraintLesson
  2. ↳Type checking and test evidenceLesson
  3. ↳Continuous integration with GitHub ActionsLesson
11QA Shop investigation and evidence reviewCombine browser checks and diagnostic evidence, then choose focused next practice.
  1. ↳Capstone: QA Shop automationLesson
  2. ↳Review your automation evidence and choose the next practiceLesson