Glossary
Study as flashcards →90 terms
- Acceptance criteria Ch. 4
- The conditions a user story or feature must satisfy to be accepted by stakeholders, often used as a test basis in Agile.
- Acceptance test-driven development (ATDD) Ch. 2Ch. 4
- A test-first approach in which acceptance tests are derived collaboratively from acceptance criteria before development and then drive it.
- Acceptance testing Ch. 2
- Testing to establish whether a system satisfies acceptance criteria and is ready for deployment, typically focusing on validation.
- Alpha testing Ch. 2
- Acceptance testing performed by roles outside the development team, at the developing organization's own site.
- Anomaly Ch. 3
- Any condition that deviates from expectation; in reviews, a potential defect found in the work product.
- Behavior-driven development (BDD) Ch. 2
- A test-first approach expressing desired behavior as natural-language scenarios (e.g. Given/When/Then) that can be automated.
- Beta testing Ch. 2
- Acceptance testing performed by potential or existing customers at their own locations before general release.
- Black-box test technique Ch. 4
- A test technique based on an analysis of the specified behavior of the test object, without reference to its internal structure.
- Boundary value analysis Ch. 4
- A black-box technique that tests the minimum and maximum values of ordered equivalence partitions, where defects are most likely.
- Branch coverage Ch. 4
- The percentage of decision outcomes (branches) exercised by a test suite; 100% branch coverage implies 100% statement coverage.
- Checklist-based testing Ch. 4
- An experience-based technique in which tests are designed and executed using a checklist of conditions to remember or verify.
- Component testing Ch. 2
- Testing of individual hardware or software components in isolation; also called unit or module testing.
- Configuration management Ch. 5
- The discipline of uniquely identifying, version controlling, and tracking changes to work products so it is always clear what was tested with what.
- Confirmation testing Ch. 2
- Re-testing performed after a defect fix to confirm that the original failure no longer occurs.
- Continuous delivery Ch. 2
- Extending continuous integration so every change that passes the pipeline can be released to production at any time.
- Continuous integration Ch. 2
- Automatically building and testing software on every merged change, giving developers fast feedback on integration problems.
- Coverage Ch. 4
- The degree to which identified coverage items (e.g. requirements, partitions, branches) have been exercised by a test suite, usually as a percentage.
- Debugging Ch. 1
- The development activity of reproducing a failure, finding its cause, and fixing the underlying defect.
- Decision table testing Ch. 4
- A black-box technique that models combinations of conditions and resulting actions in a table, with each column forming a test case.
- Defect Ch. 1
- An imperfection or flaw in a work product that can cause it to fail to meet its requirements; also called fault or bug.
- Defect density Ch. 5
- The number of defects per unit size of a work product (e.g. per thousand lines of code), used to compare quality across components.
- Defect management Ch. 5
- The process of recognizing, recording, classifying, investigating, resolving, and closing defects.
- Defect report Ch. 5
- Documentation of a failure or anomaly, including the information needed to reproduce, analyze, and resolve it.
- Definition of done Ch. 5
- The agreed set of conditions a work item must satisfy to be considered complete; the Agile equivalent of exit criteria.
- DevOps Ch. 2
- An organizational approach uniting development and operations with shared goals, automation, and a CI/CD delivery pipeline.
- Driver Ch. 2
- A software component or tool that replaces a calling component, invoking the test object so it can be tested in isolation.
- Dynamic testing Ch. 3
- Testing that involves executing the test object with test data.
- Entry criteria Ch. 5
- The preconditions that must be fulfilled before a test activity can start, also called definition of ready in Agile contexts.
- Equivalence partitioning Ch. 4
- A black-box technique that divides data into partitions expected to be processed the same way, testing one value per partition.
- Error Ch. 1
- A human action or mistake that produces an incorrect result, e.g. a misunderstanding that leads to faulty code.
- Error guessing Ch. 4
- An experience-based technique that anticipates likely errors, defects, and failures based on the tester's knowledge and past experience.
- Exit criteria Ch. 1Ch. 5
- The set of conditions that must be met before testing can be declared complete, also called definition of done in Agile contexts.
- Exploratory testing Ch. 4
- An experience-based approach in which testers simultaneously learn about the product, design tests, execute them, and evaluate results.
- Failure Ch. 1
- An event in which a component or system does not behave as expected during operation.
- Fault attack Ch. 4
- A structured form of error guessing: designing tests from a list of anticipated errors, defects, and failures to deliberately provoke each one.
- Functional testing Ch. 2
- Testing what the system should do: evaluating its functions against the specified or implied behavior.
- Impact analysis Ch. 2
- Identifying the areas affected by a change, including intended consequences and side effects, to scope maintenance and regression testing.
- Inspection Ch. 3
- The most formal review type, following a defined process with trained roles, rules, and metrics, aimed at finding the maximum number of anomalies.
- Integration testing Ch. 2
- Testing focused on the interactions and interfaces between components or between systems.
- Maintenance testing Ch. 2
- Testing changes made to an operational system, including the impact of those changes on the rest of the system.
- Non-functional testing Ch. 2
- Testing how well the system behaves: evaluating quality characteristics such as performance, usability, security, and reliability.
- Operational acceptance testing Ch. 2
- Acceptance testing by operations or administration staff, covering aspects like backup/restore, monitoring, and recovery.
- Product risk Ch. 5
- A risk that the delivered product fails to satisfy users or stakeholders, e.g. missing functionality or poor performance.
- Project risk Ch. 5
- A risk that threatens the project's ability to deliver, e.g. schedule slips, skill shortages, or supplier issues.
- Quality Ch. 1
- The degree to which a work product satisfies stated and implied needs of its stakeholders.
- Quality assurance Ch. 1
- A process-oriented, preventive approach to quality: confidence that quality requirements will be fulfilled by following good processes.
- Quality control Ch. 1
- A product-oriented, corrective approach focused on achieving appropriate quality levels; testing is a major form of it.
- Regression testing Ch. 2
- Testing performed to detect unintended side effects of a change in unchanged areas of the software.
- Retrospective Ch. 2
- A recurring meeting at the end of an iteration or release where the team reflects on what went well and what to improve.
- Review Ch. 3
- A static testing technique in which a work product is evaluated by people, ranging from informal to formal (e.g. walkthrough, technical review, inspection).
- Risk analysis Ch. 5
- Identifying risks and assessing their likelihood and impact to determine each risk's level and appropriate responses.
- Risk level Ch. 5
- The importance of a risk, determined by the likelihood of the adverse event and the impact if it occurs.
- Risk-based testing Ch. 5
- An approach in which the choice, prioritization, and depth of test activities are driven by an analysis of product risks.
- Root cause Ch. 1
- The earliest underlying source of a defect; removing it prevents similar defects from recurring.
- Session-based test management Ch. 4
- A way to structure exploratory testing using charters, time-boxed sessions, session logs, and debriefings.
- Shift left Ch. 2
- Performing testing and quality activities earlier in the software development lifecycle, following the early-testing principle.
- State transition testing Ch. 4
- A black-box technique that exercises the valid and invalid transitions between states of the test object.
- Statement coverage Ch. 4
- The percentage of executable statements exercised by a test suite, used as a white-box coverage measure.
- Static analysis Ch. 3
- Tool-based evaluation of code or other work products without executing them, finding e.g. code smells and security weaknesses.
- Static testing Ch. 3
- Testing that evaluates work products without executing them, e.g. reviews and static analysis.
- Stub Ch. 2
- A skeletal or special-purpose replacement for a component that the test object calls, used to isolate it during testing.
- System testing Ch. 2
- Testing the behavior and capabilities of a whole integrated system, often against system requirements, in a representative environment.
- Test automation Ch. 6
- The use of software tools to perform or support test activities, such as test execution and results checking.
- Test basis Ch. 1
- The body of knowledge (e.g. requirements, design documents, user stories) used as the basis for test analysis and design.
- Test case Ch. 1
- A set of preconditions, inputs, actions, expected results, and postconditions developed to verify one or more test conditions.
- Test charter Ch. 4
- A brief statement of the goal and scope of a time-boxed exploratory testing session, used in session-based testing.
- Test completion report Ch. 5
- A summary of a completed stage of testing, including an evaluation against exit criteria and lessons learned.
- Test condition Ch. 1
- A testable aspect of the test object, such as a function, transaction, feature, or quality attribute, identified during test analysis.
- Test control Ch. 5
- Taking corrective actions based on test monitoring results to keep testing on track, e.g. reprioritizing tests or adjusting the schedule.
- Test harness Ch. 6
- A test environment of stubs, drivers, and supporting tools needed to execute tests against a component or system.
- Test level Ch. 2
- A group of test activities organized and managed together, e.g. component, integration, system, and acceptance testing.
- Test monitoring Ch. 5
- Continuously checking test progress and comparing actual status against the plan using metrics.
- Test object Ch. 1
- The component or system that is being tested.
- Test objective Ch. 1
- A reason or purpose for testing, such as finding defects, building confidence, or providing information for decisions.
- Test plan Ch. 5
- Documentation describing the objectives, scope, approach, resources, and schedule of intended test activities.
- Test procedure Ch. 1
- A sequence of test cases in execution order together with the actions needed to set up the preconditions and wrap up afterwards.
- Test progress report Ch. 5
- A regular report during testing that communicates status against plan, blockers, new risks, and upcoming work to support control.
- Test pyramid Ch. 5
- A model showing that lower test levels (e.g. unit tests) should have many fast, isolated tests, with fewer slower tests at higher levels.
- Test script Ch. 1Ch. 6
- A sequence of instructions for executing a test — manual steps or an automated script run by a tool.
- Test suite Ch. 1
- A set of test cases or test procedures grouped to be executed together in a specific test run or cycle.
- Test type Ch. 2
- A group of test activities based on specific test objectives, e.g. functional, non-functional, black-box, and white-box testing.
- Test-driven development (TDD) Ch. 2
- A test-first approach in which a failing test is written before the code, followed by minimal implementation and refactoring.
- Testing Ch. 1
- The set of activities to discover defects and evaluate the quality of software work products.
- Testing quadrants Ch. 5
- A model grouping test types by whether they are business- or technology-facing and whether they support the team or critique the product.
- Testware Ch. 1
- Work products produced during the test process, such as test plans, test cases, test data, test scripts, and reports.
- Traceability Ch. 1
- The ability to relate items in test documentation to each other and to the test basis, e.g. linking test cases to requirements.
- User acceptance testing (UAT) Ch. 2
- Acceptance testing by intended users in a realistic environment, focusing on fitness for use to accomplish their tasks.
- User story Ch. 4
- A short description of a feature from a user's perspective, consisting of card, conversation, and confirmation (acceptance criteria).
- Walkthrough Ch. 3
- A review type led by the author of the work product, often used to establish a common understanding and gather feedback.
- White-box test technique Ch. 4
- A test technique based on an analysis of the internal structure and processing of the test object, e.g. statement or branch testing.