Skills101
← All topics

Software Testing & Automation

Become a QA automation engineer (SDET): what to automate, Selenium WebDriver with Java, locators and waits, TestNG, the Page Object Model, API testing with REST Assured and Postman, and running everything in CI with GitHub Actions or Jenkins. Every test shown here runs and passes in a real browser and against a real API.

🎓 Free certificate for this subject

Pass all 11 lesson quizzes to get a verified certificate you can add to LinkedIn. Reading is free without an account — log in to track your progress.

Log in to track progress
  1. 01Test Automation for Beginners — Manual vs Automated, What to Automate, Tools and CareersWhat a QA automation engineer does, manual vs automated testing, the automation pyramid, what is worth automating, the main tools (Selenium, TestNG, REST Assured, Postman, Playwright) and the career path to SDET.
  2. 02Selenium WebDriver with Java — Setup and Your First Automated TestHow Selenium WebDriver controls a browser, setting up a Maven project with Selenium 4 and TestNG, Selenium Manager (no manual driver downloads), headless Chrome, and a first login test that passes.
  3. 03Selenium Locators — id, name, CSS Selectors and XPath with ExamplesEvery way to find an element in Selenium — id, name, className, tagName, linkText, CSS selectors and XPath — which to prefer, a CSS and XPath cheat sheet, and tested examples including tables and relative XPath.
  4. 04Selenium Waits — Implicit, Explicit and Fluent Waits (and Why Not Thread.sleep)Why tests fail on pages that load data in the background, how explicit waits with WebDriverWait and ExpectedConditions fix it, implicit and fluent waits, and why Thread.sleep makes suites slow and flaky — with a tested example.
  5. 05Handling Web Elements in Selenium — Dropdowns, Checkboxes, Alerts, Tables, Frames and WindowsWork with every common element: Select dropdowns, checkboxes and disabled buttons, JavaScript alerts, tables, plus frames, multiple windows, mouse and keyboard actions, JavaScript execution and screenshots.
  6. 06TestNG for Automation — Annotations, Assertions, DataProvider, Groups, testng.xml and ListenersOrganise automation with TestNG: the annotation lifecycle, hard and soft assertions, data-driven tests with @DataProvider, groups for smoke and regression runs, suites in testng.xml, listeners, and parallel runs.
  7. 07Page Object Model (POM) — Designing a Maintainable Selenium FrameworkWhy raw Selenium tests become unmaintainable, how the Page Object Model fixes it, writing page classes that return the next page, and how a full framework is organised — base classes, pages, tests, config and reports.
  8. 08API Testing with REST Assured — GET, POST, Auth Tokens, Status Codes and JSON ChecksTest REST APIs in Java with REST Assured: the given/when/then style, checking status codes, headers and JSON fields with Hamcrest matchers, logging in and sending Bearer tokens, chaining requests, and negative tests — run against a real API.
  9. 09API Testing with Postman — Collections, Tests, Variables, Environments and NewmanTest APIs by hand and automatically with Postman: requests and collections, test scripts with pm.test, saving a login token into a variable, environments for local and staging, and running collections in CI with Newman.
  10. 10Running Tests in CI/CD — GitHub Actions, Jenkins, Reports and Flaky TestsRun your Selenium and API tests automatically on every push with GitHub Actions or Jenkins: start the app, run headless tests, publish reports and screenshots — and how to find and fix flaky tests.
  11. 11Selenium, TestNG and API Testing Interview Questions — With Short AnswersThe questions asked in QA automation interviews for freshers and 0–3 years: testing basics, Selenium WebDriver, locators and waits, TestNG, POM and frameworks, REST Assured and Postman, CI and flaky tests.