Testing Glossary
Browse 148 testing terms defined in plain English, from the cultural dictionary of computing.
148 Testing Terms
- A/B Testing
- A/B Testing is an experimental method where two variants of a product, webpage, or feature are shown to different segments of users simultaneously to determine...
- Acceptance Testing
- Acceptance Testing is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability...
- Adversary Simulation
- A controlled exercise that simulates attacker behavior to test detection, response, and resilience. It can overlap with adversary emulation, though simulation...
- AI Simulation
- The use of AI within a simulated environment, or the use of simulation to test AI behavior before real deployment. AI simulations are common in robotics,...
- AI Test
- A single test case or evaluation scenario used to check whether an AI system behaves acceptably on a specific input or requirement. AI tests can cover...
- AI Testing
- The broader practice of validating AI system behavior through test sets, scenario runs, regression suites, manual review, and production monitoring. AI testing...
- Alpha Release
- A formal release of an early-stage version intended for limited testing, feedback, and internal validation before beta or general availability. Alpha releases...
- API Testing
- The practice of verifying that an API behaves correctly across success paths, edge cases, failures, authentication scenarios, and contract expectations. API...
- Assertion
- Assertion is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability as systems...
- Assertion Library
- A testing library that provides expressive helpers for checking expected values, errors, object shapes, and other conditions in unit or integration tests....
- Attack Emulation
- A controlled security exercise that recreates attacker actions and techniques to test whether detections, controls, and responders behave as expected. It...
- Attack Simulation
- A controlled exercise that simulates attack conditions to measure whether preventative and detective controls work as intended. It may be automated, manually...
- Automated Testing
- The use of scripts and test frameworks to run checks on code behavior automatically rather than relying only on manual verification. Automated testing enables...
- BDD
- BDD is behavior-driven development, a testing and collaboration style centered on executable behavior examples. It is commonly used for turning user scenarios...
- Benchmark
- A standardized test or dataset used to evaluate and compare AI model performance. MMLU, HellaSwag, HumanEval — the SATs of the AI world. Models are optimized...
- Benchmark Suite
- Benchmark Suite is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability as...
- Beta
- A pre-release stage where software is more complete than alpha but still being tested by selected users or the public before full release. In casual tech...
- Beta Launch
- The release of a product or feature to a limited audience while it is still being validated and improved. A beta launch usually seeks feedback, usage data, and...
- Beta Program
- A structured process for giving selected users early access to a product or feature in exchange for feedback and validation. Good beta programs manage...
- Beta Tester
- A user who tries a product, feature, or release before general availability in order to provide feedback and uncover issues. In software culture beta testers...
- Black Box Fuzzing
- Fuzz testing performed without internal knowledge of the target's source code or structure, relying instead on observed inputs and outputs. It is useful for...
- Black Box Testing
- Black Box Testing is a security testing approach that evaluates a target without internal design knowledge, using only external behavior and exposed...
- Breakpoint
- Breakpoint is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability as...
- Browser Automation
- The programmatic control of a web browser to simulate user actions such as navigation, clicking, typing, screenshot capture, or DOM inspection. Browser...
- Bug Bounty Program
- Bug Bounty Program is a coordinated vulnerability-disclosure program that rewards external researchers for responsibly reporting valid security issues....
- Build Matrix
- A set of build or test combinations run across different dimensions such as operating systems, runtimes, architectures, database versions, or feature flags....
- Burp Suite
- Burp Suite is an application security testing platform for intercepting traffic, manipulating requests, and auditing web behavior. Security teams use it to...
- Chaos Budget
- The amount of risk a team is willing to take with chaos experiments, analogous to error budgets. When reliability is high (error budget surplus), the chaos...
- Chaos Engineering
- The discipline of intentionally injecting failures into production systems to verify they can withstand turbulent conditions. Netflix's Chaos Monkey randomly...
- Chaos Monkey
- A tool created by Netflix that randomly terminates production instances to ensure that engineers build resilient services that can tolerate unexpected...
- Chaos Testing
- Deliberately injecting failures (network partitions, server crashes, disk full, clock skew, high latency) into a system to verify it handles them gracefully....
- CI
- CI, or Continuous Integration, is a software development practice where developers frequently merge their code changes into a shared repository, with each...
- Clock
- A source of time used by software for timestamps, scheduling, timeouts, ordering, and measurement. Clocks can represent wall time, monotonic time, or mocked...
- Cloud Penetration Testing
- Penetration testing focused on cloud environments, including identity layers, exposed services, storage, network controls, and cloud-native misconfigurations....
- Code Coverage
- A metric that measures the percentage of source code executed during automated testing. While high coverage does not guarantee correctness, low coverage...
- Code Review Bot
- Code Review Bot is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability as...
- Code Testing Culture
- The shared norms and expectations a team has around writing, maintaining, and trusting tests. Strong code testing culture means tests are part of everyday...
- Compiled It In My Head
- A joking way to admit that code was not actually run or tested and was only mentally checked for correctness. It usually signals overconfidence right before a...
- Component Test
- A test that exercises a single component in relative isolation, often verifying rendering, props handling, state changes, and user interactions without...
- Contract Testing
- A testing approach where API consumers and providers independently verify that they conform to a shared contract (expected request/response format). Tools like...
- dark launch
- A deployment technique where new code is released to production and executed in the background without exposing results to users. Dark launches allow teams to...
- DAST
- Dynamic Application Security Testing — testing a running application by sending crafted requests to discover vulnerabilities from the outside (black-box...
- Dependency Injection
- Dependency Injection is a design pattern where an object receives the other objects it depends on from an external source rather than creating them internally....
- Dogfood
- Dogfood, or dogfooding, is the practice of a company using its own products internally before or alongside releasing them to customers. The term comes from the...
- Dogfooding
- The practice of a company using its own products internally before releasing them to customers. Derived from the aphorism 'eating your own dog food.'
- Dogfooding (slang)
- Informal variant: 'We're eating our own dogfood this quarter.' Means using your own product internally. If it's good enough to sell, you'd better be willing to...
- Dry Run
- A rehearsal or simulation of an action without applying the full real-world effects. In engineering slang, dry runs are how teams learn whether a deployment or...
- Dynamic Analysis
- The examination of software by running it and observing its behavior, such as system calls, network activity, memory use, and file changes. Dynamic analysis is...
- Dynamic Application Security Testing
- Dynamic Application Security Testing is runtime testing of a running application by sending requests and observing behavior from the outside. Security teams...
- E2E Testing
- End-to-end (E2E) testing validates the entire application stack by simulating real user interactions from the UI through backend services to the database and...
- Edge Case
- An input or condition at the extreme boundary of expected parameters — the empty string, the null value, the list with exactly one element, the date February...
- End-to-End Test
- An End-to-End Test is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Ethical Hacking
- Ethical Hacking is authorized offensive testing performed to identify weaknesses before they are exploited maliciously. Security teams use it to enforce trust,...
- Eval Suite
- A collection of automated tests, tasks, or scoring scripts used to evaluate model quality across multiple behaviors.
- Experiment
- A deliberate test used to learn something under controlled or at least interpretable conditions. In tech culture experiments are valuable because they turn...
- Eye Tracking
- A method of measuring where people's eyes move and focus while they look at screens, interfaces, or physical environments. In design culture eye tracking is...
- Fake Data
- Artificial or simulated data used for testing, demos, prototyping, or development instead of real production data. In engineering culture fake data is useful,...
- False Negative
- A case where a malicious or noncompliant condition exists but the security control fails to detect or flag it. False negatives are dangerous because they...
- Fault Injection
- Fault Injection is the deliberate induction of abnormal conditions such as voltage, timing, or input faults to study system behavior. Security teams use it to...
- Feature Flag
- A feature flag (also called a feature toggle) is a configuration mechanism that enables or disables application functionality at runtime without deploying new...
- Feature Testing Culture
- The shared habits a team has around testing features before and after release, including edge cases, rollout checks, and real-user impact. Strong feature...
- Field Test
- A test conducted in real or realistic operating conditions rather than only in controlled lab or staging environments. In engineering culture field tests...
- Flake
- A test, build, or job that passes and fails intermittently without a meaningful code change, usually because of timing, environment variance, hidden...
- Flaky Test
- A test that intermittently passes and fails without any code change, typically due to race conditions, time dependencies, shared state, or network calls. Flaky...
- Fuzzer
- A tool that automatically feeds large volumes of malformed, unexpected, or randomly varied input into software to uncover crashes, hangs, memory corruption, or...
- Fuzzing
- An automated testing technique that bombards a program with random, malformed, or unexpected input to discover bugs and vulnerabilities. The computational...
- Fuzz Testing
- Fuzz Testing is automated testing that feeds malformed or unexpected input to software to expose crashes and logic flaws. Security teams use it to enforce...
- Golden File Test
- A test that compares program output against a saved reference file ('golden file' or 'snapshot'). On first run or with an update flag, it saves the output. On...
- Gray Box Testing
- Gray Box Testing is security testing performed with partial knowledge of the target such as architecture, credentials, or API documentation. Security teams use...
- Happy Path
- The ideal expected flow through a system where inputs are valid, dependencies behave, and nothing unusual goes wrong. Teams often contrast it with edge cases...
- Integration Test
- Integration Test is an automated test that verifies the interaction between two or more components, modules, or services to ensure they work correctly...
- Integration Testing
- Integration testing verifies that separate components or services work correctly when connected together, catching bugs that emerge only from interactions...
- It Compiles Ship It
- A mocking phrase for treating successful compilation as enough evidence that code is ready to release. In engineering slang, it criticizes teams that confuse...
- Jest
- A JavaScript testing framework that provides test execution, assertions, mocking, snapshot testing, and parallelized runs out of the box. It is commonly used...
- JUnit
- A unit testing framework for Java used to define test cases, assertions, fixtures, and automated test execution as part of the build. Modern JUnit versions...
- Load Testing
- Simulating expected or peak traffic patterns against a system to verify performance under load. Measures response times, throughput, error rates, and resource...
- Matrix Build
- A CI configuration that runs the same test suite across multiple combinations of parameters -- OS versions, language versions, dependency versions, or...
- Mocking
- Mocking is a testing technique where fake objects or functions stand in for real dependencies, allowing code to be tested in isolation without hitting...
- Mock Object
- A test double that simulates the interface of a real dependency — such as a database client or HTTP service — and records the calls made against it so that a...
- Mock the Clock
- To replace real time with controlled test time so time-dependent logic becomes predictable and testable. In engineering slang, mocking the clock is one of the...
- Model Test
- A test case or testing process used to check model behavior, quality, safety, or performance. Model tests are often included in regression suites before...
- Mutation Testing
- A technique that evaluates test suite quality by introducing small changes ('mutations') to the source code — flipping operators, changing constants, removing...
- Nightly
- Describing builds or releases generated frequently, often every night, from the latest state of development rather than from a stable release branch. In...
- Nightly Build
- An automated build compiled from the latest source code every night, providing the most current (and least stable) version of software. For people who prefer...
- Nightly Build
- An automated build produced from the latest source code every night (or continuously), containing bleeding-edge features and changes. Used by early adopters,...
- Offensive Security
- Offensive Security is the practice of simulating attacker behavior to identify, validate, and communicate security weaknesses. Security teams use it to enforce...
- Package Test
- A test that verifies a package builds, installs, or behaves correctly in its packaged form rather than only in source-tree development mode. In release...
- Performance Testing
- A category of testing that evaluates a system's speed, scalability, and stability under expected and peak workloads. Subtypes include load testing, stress...
- PHPUnit
- The standard unit testing framework for PHP, inspired by JUnit. Provides assertions, test fixtures, mocking, and code coverage analysis. If you write PHP...
- Playwright
- A browser automation and end-to-end testing framework used to script user flows across modern browsers.
- Prerelease
- A release published before official stable release, often marked alpha, beta, rc, or preview, to gather testing and feedback. In release culture, prereleases...
- Prompt Testing
- The practice of testing prompts against known cases, edge conditions, and regression suites to verify behavior before release. Prompt testing is necessary...
- Property-Based Testing
- A testing approach where you define properties that should always hold true (invariants), and the framework generates hundreds of random inputs to try to find...
- Prototype
- Prototype is a preliminary version of a product, system, or feature built to test concepts, validate assumptions, and gather feedback before investing in full...
- Proving Ground
- A context, customer segment, or early market where a company can test whether its product and execution hold up under real conditions. Startups often use one...
- Puppeteer
- A Node.js library developed by Google that provides a high-level API to control headless (or headful) Chrome/Chromium via the DevTools Protocol. Commonly used...
- Pure Function
- A function that always returns the same output for the same input and has no side effects — it does not modify external state, perform I/O, or depend on...
- pytest
- pytest is the most popular testing framework for Python, known for its simple syntax, powerful features, and extensive plugin ecosystem. Unlike the standard...
- Quality Gate Slang
- Informal language around the checks and rules a change must pass before moving forward. In engineering slang, quality-gate talk often reveals whether the team...
- Red Bar
- A failing test state, often shown visually in red, especially in TDD workflows where failure is expected before the implementation is written. More broadly it...
- Regression Test
- A test specifically written or retained to verify that a previously fixed bug does not reappear — or more broadly, that new changes have not broken existing...
- Release Candidate
- A software version that is potentially the final release, pending last-round testing. Labeled RC1, RC2, etc. In theory, no new features are added — only...
- Sad Path
- The error or failure path through a system, as opposed to the happy path where everything works as intended. Good testing covers sad paths, not just ideal...
- Safety Testing
- Testing focused on unsafe behavior, policy violations, prompt injection, abuse scenarios, and other safety-relevant failure modes. Safety testing is often done...
- SAST
- Static Application Security Testing — analyzing source code or compiled binaries for security vulnerabilities without executing the program. Finds issues like...
- Seed Data
- An initial dataset loaded into a database to establish baseline records needed for the application to function — such as default roles, country codes, or test...
- Setup Teardown
- The paired lifecycle hooks in test frameworks (e.g., `beforeEach`/`afterEach`, `setUp`/`tearDown`) that run code before and after each test case to establish...
- Shift Left
- Moving activities (testing, security scanning, performance validation) earlier in the development lifecycle — from production leftward to development. Finding...
- Smoke Test
- Smoke Test is a preliminary, broad-but-shallow test run performed to verify that the most critical functions of a software system work before committing to...
- Smoke Test Slang
- Informal talk for a quick high-level check that verifies something basically works after a change. In engineering slang, smoke tests are about fast confidence,...
- Snapshot Slang
- Informal usage of snapshot for a saved moment-in-time copy of data, output, or system state. In engineering slang, snapshots are useful until teams mistake...
- Snapshot Test
- An automated test that captures the serialized output of a component or function (such as rendered HTML or a JSON structure), saves it to a file, and on...
- Snapshot Testing
- A testing technique that captures the output of a component or function and compares it against a stored reference ('snapshot'). If the output changes...
- Software Testing
- The practice of executing software under controlled conditions to verify that it behaves as expected and to discover defects. Encompasses multiple levels —...
- Spec File
- A file that defines a specification — either a test specification (e.g., user.spec.ts in Jest/Vitest, user_spec.rb in RSpec) containing test cases for a...
- State Explosion
- A rapid growth in the number of possible states or interactions a system can enter, making reasoning, testing, and verification much harder. It often appears...
- Stub
- A minimal, hard-coded stand-in for a real dependency that returns predetermined data when called, used in testing to isolate the unit under test from external...
- Suite
- A named group of related test cases that are executed together, typically defined by a `describe` block (Jest, Mocha), a test class (JUnit, pytest), or a...
- System Test
- An end-to-end test that validates the complete, integrated system against its specified requirements — exercising the full stack including UI, APIs, databases,...
- TDD
- Test-Driven Development (TDD) is a software development discipline built on a short, repeating cycle called red-green-refactor. First, write a failing test...
- Testability
- The degree to which a software component can be effectively and efficiently tested, determined by factors like dependency injection, separation of concerns,...
- Test Assertion
- A statement within a test that declares an expected condition — such as assertEquals(actual, expected) or expect(result).toBe(true) — which either passes...
- Test Case
- A single, self-contained specification of inputs, execution steps, and expected outcomes designed to verify one specific behavior or requirement of the system...
- Test Container
- A library (most commonly Testcontainers for Java, Python, Node, Go, and .NET) that programmatically spins up lightweight Docker containers for dependencies...
- Test Coverage
- A metric — typically expressed as a percentage — that measures how much of a codebase's lines, branches, functions, or statements are exercised by the test...
- Test Data
- Predefined or generated input values, database records, and fixture files used to exercise a system during testing — crafted to cover typical scenarios, edge...
- Test Double
- A generic term for any object that stands in for a real dependency in tests. Types: dummy (passed but never used), stub (returns canned answers), spy (records...
- Test-Driven Development
- A software development methodology where you write a failing test before writing the production code that makes it pass. The cycle is red (fail), green (pass),...
- Test Environment
- An isolated deployment — separate from production and often from development — where the application and its dependencies (databases, queues, third-party...
- Test Fixture
- The fixed state used as a baseline for running tests — test data, mock objects, configuration, database records, and environment setup. Fixtures run before...
- Test Framework
- A library that provides the scaffolding for writing, organizing, and running tests — including test discovery, lifecycle hooks (setup/teardown), assertion...
- Test Harness
- The infrastructure code that surrounds and drives a test suite — handling test discovery, execution orchestration, environment setup and teardown, result...
- Test Hook
- A lifecycle callback — such as beforeEach, afterAll, setUp, or tearDown — provided by a test framework that runs code at specific points before or after tests...
- Testing Library
- A family of testing utilities (most notably @testing-library/react) that encourages testing UI components the way users interact with them — querying by...
- Testing Pyramid
- A testing strategy model shaped like a pyramid: a broad base of fast, cheap unit tests, a middle layer of integration tests, and a narrow top of slow,...
- Testing Standard
- A standard or shared convention describing how tests should be written, organized, named, or enforced. In engineering organizations, testing standards reduce...
- Test in Production
- To rely on real users or live systems as the proving ground for a change, intentionally or by neglect. In engineering slang, testing in production can be...
- Test Mock
- A test double that replaces a real dependency with a programmable stand-in, pre-configured to return specific responses and capable of verifying that expected...
- Test Plan
- A document that specifies the scope, approach, resources, schedule, and pass/fail criteria for testing a particular feature or release, serving as the contract...
- Test Runner
- A program that discovers test files, executes them in a controlled environment, captures pass/fail results, and reports outcomes — examples include Jest,...
- Test Spy
- A test double that wraps a real implementation, allowing the actual behavior to execute while silently recording calls, arguments, return values, and...
- Test Strategy
- A high-level document or decision framework that defines which types of testing (unit, integration, E2E, performance, etc.) a project will employ, the ratio...
- Test Suite
- A collection of related test cases grouped together, typically organized by feature, module, or test type, that can be executed as a single unit by a test...
- Test Utility
- A shared helper function, factory, or fixture builder used across multiple test files to reduce duplication — such as a function that creates a fully-populated...
- Unit Test
- Unit Test is an automated test that verifies the behavior of a small, isolated piece of code, typically a single function, method, or class, in isolation from...
- Unit Testing
- Unit testing is the practice of writing automated tests that verify individual functions, methods, or classes in isolation from the rest of the system. Each...
- Usability Testing
- Usability Testing is a user experience research method where real users attempt to complete specific tasks with a product while researchers observe their...
- Visual Regression Test
- An automated test that captures screenshots of a UI component or page and compares them pixel-by-pixel (or perceptually) against approved baseline images to...
Related Topics
- Quality (20 terms in common)
- Qa (13 terms in common)
- Ci/Cd (11 terms in common)
- Automation (10 terms in common)
- Slang (7 terms in common)
- Methodology (6 terms in common)
- Engineering (6 terms in common)
- Ai (6 terms in common)
- Appsec (5 terms in common)
- Unit Testing (5 terms in common)
- Reliability (5 terms in common)
- Assessment (4 terms in common)
- Unit Tests (4 terms in common)
- Ci (4 terms in common)
- Ux (4 terms in common)
- Evaluation (3 terms in common)
- Test Doubles (3 terms in common)
- Tdd (3 terms in common)
- Releases (3 terms in common)
- Design (3 terms in common)