Interactive roadmap

    QA Engineer roadmap

    Learn to find problems before users do, by hand and with automated tests.

    Your progress0% · 0 of 15 topics
    Done Learning Skipped OptionalClick any topic to learn more and mark your progress.
    1. 1

      Testing fundamentals

      0 of 4 done

      What good testing looks like.

      Keep an open, curious mind because finding bugs is like being a helpful detective.
    2. 2

      Web and API testing

      0 of 4 done

      Test what users and systems actually use.

      Learn to look beneath the surface of web pages to understand how they truly communicate.
    3. 3

      Test automation

      0 of 4 done

      Let computers repeat the boring checks.

      Start small with automation, turning your most repetitive manual checks into reliable scripts.
    4. 4

      Beyond functional testing

      0 of 3 done

      The qualities users notice.

      Expand your toolkit beyond basic functionality to ensure software is fast, inclusive and secure.

    Learn it all, with a tutor that never sleeps

    Every topic links to LevelUp lessons, practice exercises and the 24/7 AI Tutor. Your progress updates as you master lessons.

    Every topic explained

    Step 1: Testing fundamentals

    Quality, risk and where testing fits in the software lifecycle.
    Read more

    Testing is the safety net that stops broken software from reaching real people. It is about understanding what the product is meant to do and checking if it actually works that way in practice.

    Imagine buying a kettle where the switch clicks, but the water never boils. Quality assurance spots that flaw before the item ships. This matters because fixing a mistake early saves time, money and customer trust.

    As you start your journey, remember that testing is not just about finding faults. It is about making sure the software is genuinely useful, reliable and safe for everyone who depends on it.

    • Catches software mistakes early
    • Saves time and money
    • Protects customer trust
    • Ensures product reliability
    Functional, regression, smoke, exploratory and acceptance testing.
    Read more

    Different testing types help us check various parts of an application. Smoke tests do a quick health check, while regression tests make sure new updates have not broken older, working features.

    Think of checking a car. You might do a quick dashboard check before driving, test the brakes on a quiet street, and take it for a long spin to test performance. Each style of test catches a different kind of problem.

    Knowing your test types helps you pick the right tool for the job. It ensures you do not waste time doing the wrong check when a simpler or deeper approach is needed.

    • Smoke tests check basic health
    • Regression tests check for new breaks
    • Exploratory testing uncovers surprises
    • Acceptance tests match user needs
    Clear steps, expected results and good coverage of edge cases.
    Read more

    A test case is a step-by-step instruction guide for checking a specific feature. It includes prerequisites, clear actions to take, and the expected result so anyone can run it.

    Imagine a recipe. If the steps say mix flour and water, but do not mention amounts or baking time, the bread will fail. Good test cases remove guesswork and leave no room for confusion.

    Clear test cases matter because they make testing repeatable. They let different team members check the exact same feature and get reliable, trustworthy results every single time.

    • Includes clear preconditions
    • Lists step-by-step actions
    • States clear expected results
    • Covers tricky edge cases
    Bug reports developers can reproduce and fix quickly.
    Read more

    A good bug report gives developers all the clues they need to find and fix a problem quickly. It avoids vague comments and focuses on facts, steps and evidence.

    Think of calling a mechanic. Saying the car makes a noise is hard to fix. Saying the car makes a ticking noise when you turn right at fifty miles per hour helps instantly.

    Reporting bugs well makes you a valued team member. When developers can reproduce an issue easily, they can fix it faster, keeping your project on schedule and your users happy.

    • Give a clear, short title
    • List exact steps to reproduce
    • Show actual versus expected results
    • Include screenshots or logs

    Step 2: Web and API testing

    HTML, the browser and HTTP, so you know where bugs hide.
    Read more

    Web applications rely on browsers reading HTML code and talking to servers using HTTP requests. Understanding this conversation helps you see where data goes and where bugs might hide.

    Imagine ordering food at a counter. You speak your order, the waiter takes it to the kitchen, and food comes back. Web requests work the same way behind the scenes.

    Knowing how the web works lets you troubleshoot smarter. When a page fails to load, you will know whether the problem is in your browser, the network, or the remote server.

    • Browsers render HTML and scripts
    • HTTP requests fetch server data
    • Status codes show success or failure
    • Client and server talk constantly
    An overview of HTTP (MDN)
    Console errors, network calls and responsive views.
    Read more

    Browser DevTools are built-in developer panels that let you inspect page elements, watch network traffic, and read error messages straight from the console.

    Think of it as lifting the bonnet of a car to check the engine while it runs. You can see warning lights and check fuel flow instantly.

    Using DevTools helps you find the root cause of bugs fast. Instead of guessing why an image is missing, you can check the network tab and see the exact error code.

    • Inspect HTML elements and styles
    • Read JavaScript console errors
    • Monitor network requests and responses
    • Test mobile screen sizes easily
    Chrome DevTools
    Checking endpoints with tools such as Postman.
    Read more

    An API lets different software systems talk to each other without needing a visual user interface. Testing APIs ensures data is sent and received accurately behind the scenes.

    Imagine a waiter carrying messages between you and the chef. You never enter the kitchen, but your meal still arrives correctly based on your requests.

    Testing APIs is vital because modern apps rely heavily on them. Catching an API bug prevents broken data from ever reaching the user interface.

    • Send requests using tools like Postman
    • Check JSON payloads and data structures
    • Verify HTTP status codes like 200
    • Test input validation and security
    Postman Learning Center
    Checking data in the database directly.
    Read more

    SQL is the language used to talk to databases. Knowing basic queries lets you check if user data, orders or settings are saved correctly in the backend.

    Think of a database as a giant filing cabinet. SQL is how you ask the cabinet to show you specific folders and papers.

    Checking data directly helps you verify that actions on the screen actually update storage properly. It bridges the gap between what users see and what the system saves.

    • Write basic SELECT statements
    • Filter data using WHERE clauses
    • Check database state after actions
    • Confirm records save accurately
    PostgreSQL tutorial

    Step 3: Test automation

    Enough JavaScript or Python to write and read test code.
    Read more

    Learning basic programming gives you the power to read and write test scripts. You do not need to build full applications, but you should understand variables, loops and functions.

    Think of it like learning basic carpentry to build simple jigs for your workshop. You just need enough skill to assemble your testing tools.

    Coding skills unlock modern testing roles. They let you automate tedious checks, saving hours of manual clicking and freeing you up for creative exploratory work.

    • Understand variables and data types
    • Use conditional statements and loops
    • Write and call simple functions
    • Read basic test script syntax
    The Modern JavaScript Tutorial
    Automating real user journeys in the browser with Playwright or Cypress.
    Read more

    End-to-end testing uses code to simulate a real user clicking through your app in a browser. Tools like Playwright and Cypress make this fast and reliable.

    Imagine a model train running along a track automatically to check that all the switches and signals work without human hands.

    E2E tests protect critical user journeys, like signing up or buying a product. They run automatically to ensure your core features never break during updates.

    • Simulate real user clicks and typing
    • Use tools like Playwright or Cypress
    • Verify page elements appear correctly
    • Run checks across multiple browsers
    Playwright: getting started
    How developers test, and how to review their tests.
    Read more

    Unit and integration tests are written by developers to check individual functions and connected modules. As a QA, you review these tests to ensure good coverage.

    Think of a factory checking individual engine parts before assembling the car. Unit tests check the small parts work in isolation.

    Reviewing these tests helps you understand where the code might be fragile. It lets you guide the team on what extra scenarios need automated coverage.

    • Understand code-level testing approaches
    • Review developer test coverage reports
    • Identify missing test scenarios
    • Collaborate on quality strategies
    Jest: getting started
    Running the suite on every change and keeping it reliable.
    Read more

    Continuous Integration servers run your test suite automatically every time a developer saves new code. This keeps bugs out of production before they land.

    Imagine an automated inspection belt in a factory that tests every single item as it rolls off the production line.

    Running tests in CI means your team gets fast feedback. If someone breaks a feature, the system flags it instantly so it can be fixed right away.

    • Trigger tests on code commits
    • Keep test suites fast and stable
    • Fix flaky or unreliable tests
    • View build reports in pipelines
    GitHub Actions documentation

    Step 4: Beyond functional testing

    (optional)
    How the app behaves under load.
    Read more

    Performance testing checks how your application behaves under heavy loads and high traffic. It ensures the system stays fast when many people use it at once.

    Imagine a popular restaurant suddenly filling every table. Performance testing checks if the kitchen can keep up or if orders grind to a halt.

    Speed matters for user retention and business success. Finding bottlenecks early stops your site from crashing on launch day.

    • Simulate multiple virtual users
    • Measure page load times under load
    • Identify server response bottlenecks
    • Ensure system stability over time
    Grafana k6 documentation
    Checking keyboard use, screen readers and contrast.
    Read more

    Accessibility testing ensures people with visual, hearing or motor impairments can use your software easily. It checks keyboard navigation, text contrast and screen readers.

    Think of building a public library with ramps and automatic doors alongside stairs, ensuring everyone can enter comfortably.

    Making software accessible is a legal requirement in many places and a moral duty everywhere. It opens your product up to a much wider audience.

    • Test navigation using only keyboards
    • Check colour contrast ratios
    • Ensure proper screen reader labels
    • Follow established accessibility guidelines
    Introduction to web accessibility (W3C)
    (optional)
    Spotting common vulnerabilities before attackers do.
    Read more

    Security testing basics involve spotting common vulnerabilities, such as unvalidated input or broken access controls, before malicious actors exploit them.

    Imagine locking your doors and checking windows before leaving your house. You want to make sure casual intruders cannot wander inside.

    Basic security awareness helps protect sensitive user data. Catching simple vulnerabilities keeps your company out of the headlines and keeps customers safe.

    • Check for simple input validation flaws
    • Ensure sensitive data is not exposed
    • Verify proper user permission checks
    • Follow safe and authorised test scopes
    OWASP Top 10

    Related roadmaps