Career Hub
Quality Assurance Testing
Overview
Quality assurance engineers ensure that software works correctly, reliably, and securely before it reaches users. The QA discipline spans manual testing, test automation, performance testing, and accessibility testing. In modern agile teams QA is embedded in the development process rather than applied at the end. QA engineers who can write automation code are significantly more in demand than those who only test manually. The path from manual QA to automation engineer is a natural one and can happen within two to three years.
What does the Quality Assurance Testing role involve?
- Writing and executing test plans and test cases for new features and regression cycles.
- Exploring applications to find unexpected failure modes.
- Writing automated tests using frameworks such as Playwright, Selenium, or Cypress for browser-based testing, and Pytest or JUnit for API and unit tests.
- Building and maintaining test pipelines in CI/CD systems.
- Reporting and triaging defects with clear reproduction steps.
- Collaborating with developers to shift testing earlier in the development process (shift-left testing).
- Performance testing with tools such as k6 or JMeter.
Skills Required
- Manual testing: test case design techniques (equivalence partitioning, boundary value analysis, exploratory testing heuristics).
- Defect reporting: writing clear, reproducible bug reports.
- Test automation: one browser automation framework (Playwright or Cypress preferred in UK market) and one API testing framework (Postman or requests in Python).
- Programming fundamentals: Python or JavaScript for writing tests.
- SQL basics for database validation.
- CI/CD awareness: how to run tests in GitHub Actions or similar.
- Accessibility testing: understanding WCAG 2.1 AA and how to use screen readers and browser DevTools for accessibility checks.
UK Salary Range
Entry level (0-2 years): £22,000 to £32,000 for manual QA roles. £28,000 to £38,000 for roles that include automation. Public sector entry roles tend to advertise at £25,000 to £32,000.
Mid-level (2-5 years): £35,000 to £55,000. QA engineers with strong automation skills (Playwright, API testing, CI/CD integration) reach the higher end. SDET (Software Development Engineer in Test) roles, which blur into engineering, command a further premium.
Senior (5+ years): £55,000 to £75,000. QA leads and test architects. Performance testing specialists and security testing specialists command higher rates.
Contracting: Mid-level QA automation engineers contract at £300 to £500 per day. Performance testing specialists (k6, JMeter, Gatling) command higher rates.
UK Job Market
- QA roles are present in almost every UK software company.
- Manual QA roles are more numerous at the entry level but automation QA commands higher salaries and more job security as manual testing is progressively automated.
- Government digital services (NHS, DWP, DVLA, Companies House) hire QA engineers in volume and provide structured environments for junior practitioners.
- Financial services, SaaS companies, and consultancies also hire regularly.
- ISEB/ISTQB Foundation certification is valued as a signal of structured testing knowledge but is not universally required.
Who This Career Path Is For
- Detail-oriented people who take satisfaction in breaking things deliberately.
- Those who communicate clearly about problems.
- Developers who want to shift into a testing specialism.
- Career changers from support, customer service, or operations who understand how things fail from a user perspective.
How to Get Started
Phase 1: Testing fundamentals (weeks 1-4)
- Learn test case design techniques: equivalence partitioning (group inputs into classes that should behave the same), boundary value analysis (test at and just outside the boundaries), and decision table testing.
- Practice writing test cases for a form or login flow.
- Study how to write a clear bug report: title summarising the issue, steps to reproduce, expected result, actual result, environment, and evidence.
Phase 2: Manual and exploratory testing (weeks 5-8)
- Apply structured and exploratory testing to a real application.
- Use heuristics (SFDPOT, FEW HICCUPS) to guide exploration.
- Build a test plan for a small feature: objectives, scope, test cases, entry and exit criteria.
- Practice the conversation about what to test and what to skip.
Phase 3: API and database testing (weeks 9-14)
- Learn HTTP methods, status codes, and request/response structure.
- Use Postman to test REST APIs.
- Write test scripts to validate response schema and status codes.
- Use SQL to validate that operations persist correctly in the database.
- Understanding the full stack (UI, API, database) is what separates strong QA candidates from weak ones.
Phase 4: Test automation (weeks 15-22)
- Learn Python or JavaScript basics if not already familiar.
- Build automated tests with Playwright (browser) and pytest or Supertest (API).
- Integrate them into a GitHub Actions pipeline.
- Build a suite of 20 tests covering a demo application and document how to run them from scratch.
Deep guidance
Build Your Portfolio
Portfolio approach for QA
- GitHub repository with automated test suite: Build an automated test suite against a publicly accessible demo application (Sauce Labs SauceDemo, Demoblaze, or a public API).
- Write 25 to 30 tests covering browser UI and API layers.
- Use Playwright for browser and pytest or Supertest for API.
- Add a README explaining what you tested, the tools used, and how to run it.
- This is the single most important portfolio artefact.
- Bug reports: Document five to ten well-written bug reports from testing any public web application.
- Include title, steps to reproduce, expected result, actual result, severity, and a screenshot or screen recording.
- Publish as a Notion page or GitHub issue examples.
- Test plan document: Write a test plan for a specific feature (a login flow, a payment journey, a search function).
- Include: objectives, scope, test approach, test cases with pass/fail criteria, risk assessment, and entry/exit criteria.
- This demonstrates structured thinking.
How to Apply
Entry routes
- Many QA engineers start in manual testing roles and acquire automation skills on the job.
- Government digital services and large enterprises often provide structured training.
- Consultancies hire QA graduates and train them on client projects.
- Some companies hire directly for automation QA at junior level if the candidate has a test automation portfolio.
Certifications
- ISTQB Foundation (BCS ISEB equivalent) is a recognised qualification and worth pursuing before or during your first role.
- It demonstrates understanding of testing terminology and methodology.
- ISTQB Advanced (Test Analyst, Technical Test Analyst) is for mid-level practitioners.
CV structure
- If you have any programming experience, lead with it.
- Frame it in the context of testing: "wrote Python scripts to automate data validation" or "built Playwright tests for a portfolio application." Employers care about automation capability above all else at current market rates.
Interview Preparation
Technical questions
- "What is the difference between smoke testing and regression testing?" Smoke: a quick check that the core critical paths still work after a deployment (is the application alive?).
- Regression: a broader check that existing functionality has not been broken by a change.
- "How do you decide what to automate?" Automate tests that run frequently, are deterministic, and take a long time to run manually.
- Do not automate exploratory testing, one-off investigations, or tests for features that change frequently.
"Write a test case for a login form." Expected answer should cover: valid credentials (happy path), invalid username, invalid password, empty fields, SQL injection attempt in username field, session persistence after login, and account lockout after repeated failures.
- "Explain what a REST API is and how you would test it." REST: stateless architecture using HTTP methods (GET, POST, PUT, DELETE).
- Testing: verify correct status codes, response body schema, error handling, authentication, and performance under load.
- **"You found a high-severity bug the day before release.
- What do you do?"** Document it clearly, assess the blast radius (who is affected, how frequently), communicate to the developer and the delivery manager immediately, and participate in the severity triage without making the release decision unilaterally.
Common Mistakes to Avoid
Mistake 1: Only writing happy-path tests
- Testing that a feature works when everything is correct is the minimum.
- Strong QA finds what breaks: edge cases, concurrent users, malformed input, and unexpected navigation sequences.
Mistake 2: Brittle automation
- Tests that break every time a developer changes a CSS class or a label are more work than they save.
- Use data-testid attributes, semantic selectors, and page object models.
- Build tests that survive minor UI changes.
Mistake 3: Not understanding the application under test
- QA engineers who do not understand the business logic they are testing miss meaningful defects.
- Ask questions.
- Read the requirements.
- Understand why the feature exists and what would happen if it failed.
Mistake 4: Quantity over quality in bug reports
- Fifty vague bug reports are worse than ten excellent ones.
- Each report must contain enough information for a developer to reproduce the issue without asking a single follow-up question.
Mistake 5: Treating automation as the only goal
- Manual exploratory testing finds bugs that automated tests never will.
- The goal of automation is to free time for exploration, not to replace all human testing.
