Skip to content

Python for SDETs

This course turns Python basics into a real test-automation skill set. You’ll write genuine tests — REST API tests with requests, UI tests with Playwright — run them with pytest, and wire them into CI, all against a real web app you run on your own machine.

It’s free, in English and Azerbaijani, and built for the people moving into automation: aspiring and junior SDETs, and manual testers taking the step to code. It’s the advanced half of this site’s Python track and the Python-language sibling of the JavaScript Playwright course — same skills, same practice app, different language.

Prefer Azerbaijani? Read this course in Azerbaijani →

By the end you can write real Python tests — API and UI — against a real app, with pytest and CI. Not toy snippets: a structured suite you could show in an interview or drop into a job.

  • Python basics — variables, if, loops, functions, lists/dicts. New to Python? Start with Python Fundamentals (free, runs in your browser) and come back.
  • Comfort in the terminal — running commands, cd, installing packages. The Command line & npm reference covers the essentials.
  • No prior pytest, requests, or Playwright experience needed — we build each from zero.

Unlike Python Fundamentals, which runs in your browser, this course uses a real local setup — you install Python, pytest, and the libraries, and run tests from your terminal, exactly like on the job.

  • Learn — each module introduces a concept with explanations and runnable examples.
  • Build — you apply it to TestMarket Lab, a real web app (login, products, cart, checkout, admin) you clone and run locally with npm install && npm start.

TestMarket Lab is a small but realistic shop with two surfaces you’ll test:

  • A REST API under /apiauth, products, orders, users, cart, plus a reset endpoint built for test setup/teardown. Perfect for the requests modules.
  • A web UI with data-testid hooks throughout — perfect for the Playwright modules.

It’s the same app the JavaScript course tests, so if you ever work across both languages, the endpoints and selectors carry over.

#TitleStatus
0Setup & first testAvailable
1pytest fundamentalsAvailable
2Fixtures & parametrizeAvailable
3API testing with requestsAvailable
4Negative & validation testingAvailable
5Test data setup & teardownAvailable
6UI automation — Playwright for PythonAvailable
7Page Object Model in PythonAvailable
8Data-driven testsAvailable
9Reporting & suite structureAvailable
10CI with GitHub ActionsAvailable
11Capstone — full API + UI suiteAvailable
12Database verificationAvailable

All twelve modules are live. Module 12 is a senior extension you can bolt onto the capstone: verifying the persisted side effect of an action, not just the response.


Ready? Start with Module 0 →

Just need the basics first? Begin with Python Fundamentals →.