QA & testing glossary
Plain English definitions for the software testing and AI-powered QA terms you'll run into while working with Klarent.
A
Acceptance testing
Acceptance testing checks whether a finished system actually meets what the customer or end user needs, rather than just what was technically specified. It's usually the last testing stage before release, done by or on behalf of the people who'll actually use the software, not only the team that built it.
Accessibility testing
Accessibility testing checks whether an application can actually be used by people with disabilities, including those relying on a screen reader, keyboard-only navigation, or assistive technology. It usually measures against a published standard, most commonly WCAG, rather than a subjective sense of whether something feels usable.
Agentic workflows
An agentic workflow is a multi-step process carried out by one or more AI agents that can plan their own steps, use tools, and adjust course based on what each step actually returns, with limited or no human input along the way. It differs from a single prompt-and-response interaction by chaining reasoning and action across several steps toward a goal.
AI hallucination
AI hallucination is when a language model generates output that sounds confident and plausible but isn't grounded in fact, in its training data, or in the context it was given. In AI-driven testing, that might mean a generated test case references a UI element or a field that doesn't actually exist.
AI test analytics
AI test analytics is the use of models to interpret the data a test suite produces, rather than just charting it. It clusters related failures, separates real defects from flaky ones, tracks where a suite is losing reliability, and turns thousands of run records into a short list of things worth acting on.
AI test automation
AI test automation is the practice of using artificial intelligence, including machine learning and generative models, to design, run, and maintain software tests with little or no manual scripting. AI agents interpret how an application behaves, turn plain-language descriptions into working test cases, and adjust those tests on their own as the software underneath them changes.
AI test execution
AI test execution is the run phase of an AI-driven test suite, where agents carry out test steps against a live application, decide what to do when the screen does not match expectations, and judge whether the result counts as a pass or a failure. It replaces a fixed replay of scripted commands with a run that can reason mid-flight.
AI test maintenance
AI test maintenance is the use of AI to keep an automated test suite working as the application under test changes. Instead of an engineer editing broken scripts after every release, models detect what moved in the interface or API, repair the affected steps, and flag the failures that point at real defects.
AI test prioritization
AI test prioritization is the use of models to decide which tests to run first, or at all, for a given change. It ranks a suite by how likely each test is to catch a defect in the code that just moved, so the highest-value cases run early and a pull request gets a useful signal in minutes instead of hours.
AI workflow automation
AI workflow automation is the use of AI models and agents to carry out a multi-step process end to end, deciding what to do next based on the result of the previous step rather than following a fixed script. It differs from traditional automation by adapting its path when a step's outcome isn't what was expected.
API testing
API testing checks an application's programming interface directly, sending requests and verifying the responses, status codes, and data it returns, without going through a user interface at all. It exists to catch a broken or incorrect response at the layer where it actually happens, faster and more reliably than testing the same behavior through the UI.
Appium
Appium is an open-source framework for automating native, hybrid, and mobile web apps on iOS and Android, along with some desktop platforms. It extends the WebDriver protocol to mobile, so a team can write mobile tests using the same approach, and often much of the same code, as a Selenium-based web suite.
Automated testing
Automated testing is running tests with software instead of a person, letting a script execute the same steps and compare results every time instead of someone doing it by hand. The real decision most teams face isn't whether to automate, but which tests are worth automating and which are better left manual.
Azure DevOps
Azure DevOps is Microsoft's suite of services for managing the software development lifecycle, spanning planning, source control, builds, testing, and releases. It bundles five services, Azure Boards, Repos, Pipelines, Test Plans, and Artifacts, that teams can adopt together or individually, in the cloud or self-hosted on-premises.
C
CI/CD pipeline
A CI/CD pipeline is the automated sequence of steps that takes a code change from commit to a tested, deployable build, and often all the way to production. It typically runs builds, tests, and deployments in order, so a change earns its way to release instead of shipping on trust alone.
Compatibility testing
Compatibility testing checks that an application works correctly across the different environments it might actually run in, operating systems, hardware, software versions, and network conditions, not just the one environment it was built and tested on. Cross browser testing is one specific, common form of it, focused on web browsers.
Continuous testing
Continuous testing means running automated tests continuously throughout the software delivery pipeline, not just at one fixed stage, so a team gets fast, constant feedback on whether a change is actually safe to move forward. It's less a specific test type and more a practice of weaving testing into every step of delivery.
Cross browser testing
Cross browser testing checks that a web application looks and behaves correctly across the different browsers, and browser versions, real users actually visit with. It exists because browsers don't render every layout, script, or CSS feature identically, so code that works perfectly in one can look broken or behave differently in another.
Cypress
Cypress is an open-source, JavaScript-based testing framework for web applications, used mainly for end-to-end and component tests. Unlike tools that drive the browser from the outside, Cypress runs inside the browser alongside the application, which gives it direct access to the DOM and a fast, visual debugging experience that front-end teams tend to favor.
F
False positive
A false positive is a test that fails even though the thing it's checking actually works correctly, pointing at a problem that isn't really there. It's the opposite of a false negative, where a test passes despite a real defect, and both quietly erode how much a team can trust its test results.
Functional testing
Functional testing checks that a piece of software does what it's supposed to do, verifying its features and behavior against stated requirements rather than how fast or secure it is. It answers one plain question for each feature: given this input, does the application produce the result it's expected to.
G
GitHub Actions
GitHub Actions is GitHub's built-in automation platform for continuous integration and continuous delivery, running builds, tests, and deployments in response to events in a repository. Workflows are defined as YAML files stored in the codebase, so a pipeline lives and versions alongside the application it builds.
GitLab CI
GitLab CI is GitLab's built-in continuous integration and delivery system, running builds, tests, and deployments defined in a single YAML file stored in the repository itself. Because it lives inside GitLab alongside the code, a pipeline can react directly to a push, a merge request, or a tag without a separate CI system bolted on.
GitOps
GitOps is a way of managing infrastructure and deployments where a Git repository is the single source of truth for what a system should look like, and an automated process continuously syncs the live environment to match it. Instead of running commands against a server by hand, a team merges a change and lets automation apply it.
I
Integration testing
Integration testing checks separate pieces of a system, like a service and the database it queries, or two internal APIs, work correctly once they're connected. It exists to catch the class of bug that only shows up when components interact, the kind a unit test, run in isolation, was never going to find.
Intelligent automation
Intelligent automation combines rule-based automation, like RPA, with AI capabilities such as machine learning and natural language processing, so a system can both execute a process and make judgment calls within it. It handles the routine, repetitive parts of a task the way older automation always did, plus the parts that used to need a person's judgment.
P
Page object model
The page object model is a design pattern for browser test automation that wraps each page, or a distinct part of one, in its own class holding that page's elements and available actions. Tests call those methods instead of touching selectors directly, so a UI change means updating one class, not every test that used it.
Performance testing
Performance testing checks how an application behaves in terms of speed, responsiveness, and resource use under a given set of conditions, rather than whether its features work correctly. It covers a family of related checks, including load, stress, and scalability testing, each asking a slightly different question about how the system performs.
Playwright
Playwright is an open-source framework for end-to-end web testing and browser automation, created by Microsoft. It drives Chromium, Firefox, and WebKit through a single API, so one test suite can check an application across the engines behind Chrome, Edge, Firefox, and Safari, written in JavaScript, TypeScript, Python, Java, or C#.
Prompt engineering
Prompt engineering is the practice of writing and refining the instructions given to an AI model so it produces a specific, reliable output. In AI-driven QA, that means shaping the wording, examples, and constraints in a prompt so a model generates accurate test cases, automation scripts, or test data instead of vague or invented ones.
Puppeteer
Puppeteer is an open-source Node.js library that gives developers a high-level API to control Chrome, Chromium, and Firefox. Maintained by Google's Chrome DevTools team, it automates browser actions for testing, web scraping, screenshots, and PDF generation, running headless by default so it fits neatly into scripts and pipelines.
S
Sanity testing
Sanity testing is a quick, narrow check run after a small change or a bug fix, confirming that the specific area it touched actually works, without retesting the whole application. It's a fast, focused pass, not meant to catch everything, just to confirm a fix did what it was supposed to before moving on.
Security testing
Security testing checks an application for vulnerabilities that could let someone access data, functionality, or systems they shouldn't be able to reach. It asks a different question than most other testing: not whether a feature works as intended, but whether it can be made to do something it was never intended to do.
Selenium
Selenium is an open-source suite for automating web browsers, used mainly to write and run functional and regression tests for web applications. It drives a real browser the way a user would, clicking, typing, and navigating, and lets teams script those actions in Java, Python, C#, JavaScript, or Ruby against Chrome, Firefox, Edge, and Safari.
Shift left testing
Shift left testing means moving testing earlier in the development process, checking code as it's written rather than waiting until a feature is finished or a release is near. The name comes from a left-to-right timeline of development stages, testing moves toward the start instead of staying parked at the end.
Smoke testing
Smoke testing is a quick pass through an application's most critical functions, run right after a new build, to confirm it's stable enough to test further. It exists to catch a build that's badly broken before a team spends hours running a full test suite against something that was never going to pass.
Software quality assurance
Software quality assurance, or QA, is the set of processes and activities a team uses to prevent defects and build confidence that a product meets its requirements, before it ever reaches a user. Testing is one activity within QA, actually running the software and checking it, but QA is the broader discipline around it.
Software testing
Software testing is the process of running a program, or examining its code, to find defects and confirm it behaves the way it's supposed to before users ever see it. It ranges from checking a single function in isolation to verifying how an entire system holds up under real usage, and it happens throughout development, not only at the end.
Stress testing
Stress testing pushes a system past the traffic or load it's actually expected to handle, on purpose, to find the point where it breaks and see how it fails. Unlike load testing, which checks realistic conditions, stress testing is deliberately unrealistic, mapping out a system's real limits rather than its everyday operating range.
System testing
System testing checks a complete, fully integrated application as a whole, against its overall requirements, rather than checking one piece or one connection at a time. It's the level right before user-facing acceptance testing, confirming the entire system behaves correctly once every component is actually assembled together.
T
Test automation
Test automation is using software to run tests, compare actual results against expected ones, and report the outcome, instead of a person carrying out those same steps by hand. It exists so a team can run the same checks repeatedly, quickly, and consistently, something manual testing struggles to do at any real scale or speed.
Test case
A test case is a single, specific set of steps, inputs, and expected results used to check one particular piece of a system's behavior. It's the smallest concrete unit of testing, precise enough that anyone, or any script, can follow it and get the same pass or fail result every time.
Test data management
Test data management is the practice of creating, maintaining, and provisioning the data a test actually needs to run, realistic enough to exercise real behavior without exposing real user information. A test is only as trustworthy as the data behind it, and bad or missing data breaks a test for reasons that have nothing to do with the code.
Test management
Test management is the practice of planning, organizing, and tracking a team's testing effort, deciding what needs to be tested, who's testing it, and how the results get recorded and reported. It ties together test cases, test plans, and execution results into one coherent view of how well a release has actually been covered.
Test plan
A test plan is a document that lays out the scope, approach, and schedule for testing a specific release or feature, deciding what will be tested, how, by whom, and what counts as done. It's the plan a team works from, distinct from the individual test cases that actually get executed against it.
Test strategy
A test strategy is a high-level document describing an organization's overall approach to testing, the principles, methods, and tools it defaults to across projects, rather than the specifics of any single release. It sits above a test plan, which applies that strategy to one particular feature or release.