Testing track

Automation Testing Tutorial

Automate tests with Selenium, Playwright, xUnit, Jest and API tests — page objects, BDD, CI pipelines, flaky tests and performance testing.

Intermediate
0/24 complete
Topics
24
Full lessons
24
Est. hours
~4
Interview Qs
10

Overview

Test automation uses code to run checks repeatedly and reliably, so every change can be verified in minutes instead of days.

This track starts with what to automate and the test pyramid, then builds real suites with Selenium WebDriver and Playwright, unit tests with xUnit and Jest, API tests, BDD with Gherkin, and runs them all in CI with clear reports.

What you will learn

  • Choose what to automate using the test pyramid
  • Write reliable UI tests with Selenium and Playwright
  • Automate unit and API tests
  • Run suites in CI, report results and fix flaky tests

Prerequisites

You will get the most from this track if you already know:

Learning path

The recommended sequence, from beginner to advanced. Each stage builds on the one before.

  1. 1Foundations · 4 topics · Beginner
    Introduction to Test Automation · What to Automate · Test Automation Pyramid · Choosing a Framework
  2. 2Selenium WebDriver · 4 topics · Beginner → Intermediate
    Selenium WebDriver Setup · Locators · Waits · Page Object Model
  3. 3Playwright · 3 topics · Intermediate
    Playwright Fundamentals · Playwright Locators and Assertions · Playwright Test Runner
  4. 4Unit & API Tests · 4 topics · Intermediate
    Unit Testing with xUnit · Unit Testing with Jest · API Test Automation · Mocking and Test Doubles
  5. 5Professional Practice · 7 topics · Intermediate → Advanced
    Test Data Management · BDD with Gherkin · Cross-Browser Testing · Test Reporting · CI Integration · Flaky Tests · Performance Testing with k6
  6. 6Practice · 2 topics · Advanced
    Automation Framework Project · Interview Questions

Complete topic list

24 topics
1

Foundations

4 topics
  1. Introduction to Test AutomationBeginner5m
  2. What to AutomateBeginner5m
  3. Test Automation PyramidBeginner5m
  4. Choosing a FrameworkBeginner5m
2

Selenium WebDriver

4 topics
  1. Selenium WebDriver SetupBeginner5m
  2. LocatorsBeginner5m
  3. WaitsIntermediate5m
  4. Page Object ModelIntermediate5m
3

Playwright

3 topics
  1. Playwright FundamentalsIntermediate5m
  2. Playwright Locators and AssertionsIntermediate5m
  3. Playwright Test RunnerIntermediate5m
4

Unit & API Tests

4 topics
  1. Unit Testing with xUnitIntermediate5m
  2. Unit Testing with JestIntermediate5m
  3. API Test AutomationIntermediate5m
  4. Mocking and Test DoublesIntermediate5m
5

Professional Practice

7 topics
  1. Test Data ManagementIntermediate5m
  2. BDD with GherkinIntermediate5m
  3. Cross-Browser TestingAdvanced5m
  4. Test ReportingAdvanced5m
  5. CI IntegrationAdvanced5m
  6. Flaky TestsAdvanced5m
  7. Performance Testing with k6Advanced5m
6

Practice

2 topics
  1. Automation Framework ProjectAdvanced5m
  2. Interview QuestionsAdvanced15m

Code example

A taste of the track, from Introduction to Test Automation.

TypeScripttests/home.spec.ts Illustrative
import { test, expect } from '@playwright/test';


test('home page shows the tagline and search', async ({ page }) => {
  await page.goto('https://techiebabaji.com/');
  await expect(page).toHaveTitle(/Techie Babaji/);
  await expect(page.getByRole('searchbox').first()).toBeVisible();
});


// npm init playwright@latest   →   npx playwright test
Expected output
Running 1 test using 1 worker
  ✓  1 [chromium] › home.spec.ts:3:5 › home page shows the tagline and search (1.2s)
  1 passed (2.4s)

Practice exercises

Show all 23 exercises

Common interview questions

Frequently asked questions

Selenium or Playwright?
Both are widely used. Selenium has the longest history and supports many languages; Playwright is newer, faster to set up and has built-in auto-waiting. This track teaches both so you can work with either.
Which language should I use?
Use the language your development team uses. Examples here use JavaScript/TypeScript for Playwright and Jest, and C# for Selenium and xUnit.