QA Glossary: Test Automation Terms Every Engineer Should Know

This test automation glossary is a plain-English reference for QA engineers, SDETs, and anyone building or working with software test automation. Each term includes a clear definition and...

This test automation glossary is a plain-English reference for QA engineers, SDETs, and anyone building or working with software test automation. Each term includes a clear definition and links to deeper reading on QA Pulse.

What Is a Test Automation Glossary?

A test automation glossary is a structured reference of terms used in software testing, QA engineering, and SDET work. This glossary covers the most important concepts — from core testing methodologies and framework terminology to CI/CD, AI testing, and modern SDET skills. Use it as a quick reference when reading QA Pulse articles or preparing for technical interviews.

A

Acceptance Testing

Testing performed to verify that a system meets the business requirements agreed upon before development. It is typically the final testing phase before a product ships, often conducted by the client or end users. Acceptance testing answers the question: “Does this software do what we actually needed it to do?”

API Testing

Testing that targets the application programming interface (API) layer directly — without a user interface. API tests send HTTP requests (GET, POST, PUT, DELETE) to endpoints and validate the responses, status codes, response time, and data payloads. Tools like Postman, Newman, and Playwright’s built-in API client are commonly used. See API Testing articles →

Assertion

A statement in a test that checks whether a condition is true. If the assertion passes, the test continues. If it fails, the test stops and reports the failure. For example: expect(page.title()).toBe('Home'). Assertions are the core mechanism by which tests verify correctness.

B

BDD (Behaviour-Driven Development)

A software development approach where tests are written in plain English using a Given/When/Then syntax before the code is written. BDD encourages collaboration between developers, testers, and business stakeholders. Frameworks like Cucumber and Behave implement BDD by parsing these plain-language scenarios into executable tests.

Browser Context

In Playwright, a browser context is an isolated browser environment — similar to an incognito window — that has its own cookies, storage, and session state. Multiple contexts can run simultaneously in one browser instance, enabling parallel testing without interference between test runs.

C

CI/CD (Continuous Integration / Continuous Delivery)

CI/CD is the practice of automatically building, testing, and deploying code whenever changes are pushed to a repository. Tests run in CI pipelines (tools like GitHub Actions, Jenkins, or GitLab CI) to catch regressions before code reaches production. QA automation is a critical component of any CI/CD pipeline.

Cross-Browser Testing

Testing a web application across multiple browsers (Chrome, Firefox, Safari, Edge) to ensure consistent behaviour. Different browser engines render HTML, CSS, and JavaScript differently. Playwright supports Chromium, Firefox, and WebKit natively, making it one of the strongest tools for cross-browser automation.

D

Data-Driven Testing

A testing approach where the same test logic is executed multiple times with different input data sets. Instead of writing separate tests for each case, you parameterise the test and feed it data from a CSV, JSON, or database. This dramatically reduces test duplication and increases coverage. In PyTest, this is achieved using @pytest.mark.parametrize.

E

E2E Testing (End-to-End Testing)

Testing that validates a complete user workflow from start to finish, simulating real user behaviour through the UI. E2E tests verify that all integrated components — frontend, backend, APIs, and databases — work together correctly. Playwright and Cypress are the leading E2E testing frameworks in 2026. See Test Automation articles →

F

Fixture

A fixed state or piece of setup code that provides a consistent environment for tests to run in. In PyTest, fixtures are functions decorated with @pytest.fixture that set up and tear down resources like database connections, browser instances, or test data. Playwright also uses fixtures via its built-in test runner. See PyTest articles →

Flaky Test

A test that passes and fails intermittently without any code changes — it produces inconsistent results. Flaky tests are one of the most damaging problems in test automation because they erode trust in the test suite. Common causes include timing issues, test ordering dependencies, unstable selectors, and network variability. Playwright’s auto-waiting mechanism reduces flakiness significantly.

I

Integration Testing

Testing that verifies how multiple units or components work together. Unlike unit tests which test one function in isolation, integration tests check the interactions between modules — for example, testing that an API endpoint correctly queries the database and returns the expected JSON response.

L

Locator

In Playwright, a locator is a built-in mechanism for finding elements on a page. Unlike traditional selectors, Playwright locators are lazy — they only interact with the element when an action is performed — and are automatically retried until the element is available. Recommended locators prioritise accessibility attributes: getByRole(), getByLabel(), getByText().

M

Mocking

Replacing a real dependency (API call, database, third-party service) with a fake version that returns controlled, predictable responses during testing. Mocking isolates the component under test and makes tests faster and more reliable. In Cypress, cy.intercept() is used to mock network requests. In Playwright, page.route() achieves the same goal.

P

Page Object Model (POM)

A design pattern for test automation where each page or component of an application is represented as a class. The class encapsulates the page’s selectors and actions, keeping them separate from the test logic. This makes tests more readable, reduces code duplication, and simplifies maintenance — when a selector changes, you only update it in one place.

Performance Testing

Testing that measures how a system behaves under load — response times, throughput, resource consumption, and stability. Types include load testing (normal load), stress testing (beyond normal load), and spike testing (sudden bursts). Tools like k6, JMeter, and Gatling are commonly used. See Performance Testing services →

PyTest

The most widely used Python testing framework. PyTest is known for its simple syntax, powerful fixture system, parametrization support, and rich plugin ecosystem. It is the standard framework for writing Python-based test automation, including Playwright tests in Python. See Python articles →

R

Regression Testing

Re-running existing tests after code changes to verify that previously working functionality has not been broken. Regression testing is a core use case for test automation — manually re-running hundreds of tests after every code change is impractical, but automated regression suites can run in minutes as part of a CI/CD pipeline.

S

SDET (Software Development Engineer in Test)

A hybrid software engineering role that combines development and QA skills. SDETs build and maintain test automation frameworks, write production-quality test code, integrate tests into CI/CD pipelines, and often contribute to application code. The role requires strong programming skills (Python, JavaScript, Java) alongside deep testing expertise. See QA & SDET articles →

Selector

A string used to identify a DOM element on a web page for interaction in automated tests. Common selector types include CSS selectors (.btn-primary), XPath (//button[@type='submit']), and accessibility-based selectors (role=button). Playwright encourages accessibility-first selectors for more resilient tests that are less likely to break when the UI changes.

Selenium

The original and most widely adopted open-source browser automation framework, used since 2004. Selenium controls browsers via the WebDriver protocol and supports all major programming languages. Despite newer alternatives like Playwright and Cypress, Selenium remains dominant in enterprise environments due to its stability and broad ecosystem. See: Most QA Engineers Use Selenium Wrong →

Smoke Testing

A quick, high-level test run that checks whether the most critical features of an application are working after a new build or deployment. Think of it as a sanity check before running a full regression suite. If smoke tests fail, there is no point running the full test suite — the build is fundamentally broken.

T

TDD (Test-Driven Development)

A development practice where tests are written before the application code. The cycle is: write a failing test → write the minimum code to make it pass → refactor. TDD produces highly testable code by design and catches design flaws early. It is distinct from BDD: TDD focuses on code units, BDD focuses on business behaviours.

Test Fixture

See Fixture above. In broader usage, a test fixture refers to any fixed environment — data, files, configuration, or infrastructure — that must be in place before a test can run. Fixtures ensure tests are repeatable and independent of one another.

Test Suite

A collection of related test cases grouped together for organisation and execution. Test suites can be organised by feature, module, type (smoke, regression, integration), or priority. Running a full test suite against every deployment is the foundation of automated quality assurance.

Trace Viewer

A built-in Playwright feature that records a detailed trace of every test run — including actions taken, DOM snapshots, network requests, and screenshots at each step. Traces can be opened in a visual timeline to replay and debug test failures. The Trace Viewer is one of Playwright’s most significant advantages over older frameworks. See Playwright vs Cypress →

U

Unit Testing

Testing individual functions or classes in isolation from the rest of the system. Unit tests are the fastest and most numerous tests in a healthy test pyramid — they run in milliseconds and give immediate feedback. In Python, unit tests are typically written with PyTest or the built-in unittest module.

V

Visual Regression Testing

Testing that compares screenshots of a UI against approved baseline images to detect unintended visual changes. A pixel difference between the current state and the baseline triggers a failure. Tools like Percy, Applitools, and Playwright’s built-in screenshot comparison support visual regression testing.

W

WebDriver

The W3C-standardised protocol that allows external programs to control web browsers. Selenium WebDriver is the most well-known implementation. Playwright does not use the WebDriver protocol — it communicates directly with browsers via CDP (Chrome DevTools Protocol) for Chromium and dedicated protocols for Firefox and WebKit, which contributes to its speed and reliability advantage.


This glossary is maintained by Shahnawaz Khan, QA Automation Engineer & SDET with 10+ years of experience. New terms are added regularly. Have a term to suggest? Get in touch.

Further Reading & External Resources

These authoritative external resources complement this test automation glossary and provide deeper technical reference for QA engineers and SDETs.