Glossary
Study as flashcards →56 terms
- API testing Ch. 2Ch. 5
- Automated testing of application programming interfaces, built on knowledge of API connections and documentation; often extended with contract testing.
- Architecture transparency Ch. 2
- A testability aspect: the SUT's architecture documentation provides clear, understandable components and interfaces that give observability and controllability at all test levels.
- Assertion Ch. 6
- An executable check used by a test tool to compare specific elements of the actual result against the expected result and determine pass or fail.
- Behavior-driven development (BDD) Ch. 3
- Expressing desired behavior as Given/When/Then acceptance criteria stored in feature files, which a BDD tool can execute as automated test cases.
- Capture/playback Ch. 3
- An automation approach that records manual interactions with the SUT and produces replayable test scripts; easy to start with but hard to maintain and scale.
- CI/CD pipeline Ch. 5
- A continuous integration / continuous delivery pipeline into which automated tests are integrated at different test levels, acting as quality gates and enabling unattended execution.
- Clean code principles Ch. 4
- Programming standards for test automation maintainability: meaningful naming, logical project structure, avoiding hardcoded values, keeping methods short, using logging, and applying design patterns.
- Configuration management Ch. 5
- Managing test environment configuration, test data, and test suites so that automation works reliably across multiple environments and SUT versions.
- Contract testing Ch. 5
- Integration testing that verifies services can communicate and that shared data follows an agreed contract; consumer-driven or provider-driven.
- Controllability Ch. 2
- A testability aspect: the SUT provides interfaces that let the test automation drive actions and control the SUT's state during testing.
- Correlation ID Ch. 6
- A unique identifier added to an interaction and propagated through subsequent calls, letting testers trace system behavior across logs when analyzing results.
- Data-driven testing (DDT) Ch. 3
- An approach built on structured scripting where test scripts are fed test data from external sources (e.g. CSV files), so the same script runs with many data sets.
- Failure recovery Ch. 8
- A TAS capability to recover from a failure during test suite execution so testing can continue with the next test, including performing SUT recovery actions (e.g. reboot) when feasible.
- Feature toggle Ch. 5
- A configuration mechanism that determines which features are active per release or test environment, enabling the testware to select which test suites to execute on a given release.
- Flow model pattern Ch. 3
- An expansion of the page object model adding a facade that stores user actions interacting with page objects, improving abstraction and reuse of test steps.
- Generic test automation architecture (gTAA) Ch. 3
- A high-level abstract design describing how test automation communicates with the SUT and with project, test, and configuration management, via the capabilities of test generation, definition, execution, and adaptation.
- GUI testing Ch. 2Ch. 8
- Automated testing through the graphical user interface, interrogating controls to read state and drive actions; sensitive to locator changes.
- Keyword-driven testing (KDT) Ch. 3
- An approach where test cases are tables of test steps built from user-perspective keywords operating on test data, often layered on data-driven testing.
- Linear scripting Ch. 3
- Writing or modifying test scripts directly without custom test libraries; easy to begin but hard to maintain, scale, and evolve.
- Measurement Ch. 6
- Information recorded and logged before, during, and after test execution — supported by test-tool scripting languages — that feeds test reporting.
- Metric Ch. 6
- A measure derived from test automation data, such as the test success rate trend across runs, used in analysis and reporting.
- Model-based testing Ch. 3
- Generating test cases automatically from a test model; model-based testing tools can support the optional test-generation capability of a test automation architecture.
- Observability Ch. 2
- A testability aspect: the SUT provides interfaces that give insight into its internal state so that test cases can verify results.
- Page object model Ch. 3
- A design pattern that keeps each screen's locators and access logic in one class, so SUT structure changes require updating only the page model, not every test.
- Pilot project Ch. 4
- A short, scoped trial of test automation that evaluates programming languages, tools, test levels, selected test cases, and the development approach to set guidelines before full deployment.
- Quality gate Ch. 5
- A checkpoint in a pipeline where automated tests (e.g. component tests during the build) must pass for the build or deployment to proceed.
- Risk Ch. 4
- A factor in the future that could result in negative consequences for the test automation project; deployment risks include technical factors (packaging, logging, test structuring) and infrastructure factors (firewall openings, resource utilization).
- Schema validation Ch. 8
- Checking that an API response or database content matches its specified schema (mandatory elements, types, value rules) without writing individual assertions.
- Self-healing Ch. 8
- An AI/ML-based capability where tools detect changed UI locators using image recognition and automatically update selectors, fixing broken test cases and reporting the changed locators.
- Static analysis Ch. 7
- Inspecting test automation code with automated scans to identify vulnerabilities and defects, prioritize findings, and improve code quality.
- Structured scripting Ch. 3
- An automation approach that introduces test libraries with reusable elements, test steps, and user journeys, separating business logic from the test scripts.
- System under test (SUT) Ch. 1
- The system that the test automation interacts with and evaluates — with or without a UI, including mobile apps, services, and protocols.
- TAS failure Ch. 6
- A failed test outcome whose cause lies in the test automation solution rather than the SUT; it should be defined clearly and reported distinctly from a genuine SUT failure.
- Test adaptation layer Ch. 3
- The part of a framework that provides adaptors to connect automated tests to the SUT via APIs, protocols, and services.
- Test automation Ch. 1
- Using purpose-built software tools to control and set up test suites, execute tests automatically, and compare actual results to expected results.
- Test automation architecture (TAA) Ch. 3
- The technical design of a test automation solution, covering tool selection, components, connectivity, and integration with management systems.
- Test automation engineer (TAE) Ch. 1
- The role responsible for designing, implementing, and maintaining a test automation solution, including selecting suitable test tools for the SUT.
- Test automation framework (TAF) Ch. 3
- The foundation of a test automation solution: typically the test harness (runner) plus test libraries, test scripts, and test suites, often organized in layers.
- Test automation solution (TAS) Ch. 3
- The complete realization of test automation for a project: the framework, testware, tools, and adaptors needed to automate the testing of the SUT.
- Test environment Ch. 2Ch. 5Ch. 7
- The systems, servers, and configuration on which the TAS is deployed; it must support repeatable, systematic setup and teardown across environments.
- Test fixture Ch. 4
- Items in the test harness that control the test environment and test data, defining preconditions and postconditions so automated tests are repeatable and atomic.
- Test harness Ch. 3Ch. 4
- The test runner and supporting items (e.g. fixtures) that must be available for automated tests to execute.
- Test histogram Ch. 8
- A visual report of test result data over time that reveals trends and helps identify fragile test cases worth refactoring.
- Test intrusiveness Ch. 7
- The degree to which a tightly coupled TAS alters the SUT's behavior during testing, potentially causing failures that do not occur in production and eroding confidence in the automation.
- Test log Ch. 6
- A chronological record of test execution — the test case run, start and end time, status, significant test steps, and SUT information — used to analyze defects in both the TAS and the SUT.
- Test logging Ch. 4Ch. 6
- The chronological recording of test execution information at severity levels (fatal, error, warn, info, debug, trace), providing audit trails for analyzing defects in the TAS and the SUT.
- Test oracle Ch. 1
- A source of expected results against which automated tests verify actual results; automation can only check outcomes a test oracle can interpret.
- Test progress report (TAS) Ch. 6
- A published summary of automated test results, SUT information, and test environment documentation, tailored to management, operational, and technical stakeholders.
- Test repeatability Ch. 7
- The property that repeated execution of the same automated test always produces the same result; tests that fail intermittently should be isolated and analyzed separately.
- Test script Ch. 3
- Automation code that provides a test case repository and calls the business logic layer (test steps, user flows, API calls) — never the core libraries directly.
- Test step Ch. 3Ch. 6
- An individual action or verification within a test case; significant test steps are logged with timing so a failure can be traced to where it happened.
- Test suite Ch. 3
- A set of automated test cases or scripts executed together in a test run, managed and versioned as part of the test automation framework.
- Test-driven development (TDD) Ch. 3
- A development approach where a failing test is written first, then code to satisfy it, then the code is refactored — the red, green, refactor cycle.
- Testability Ch. 2
- The degree to which the SUT supports testing, designed in via observability, controllability, and architecture transparency.
- Testware Ch. 3
- The work products created for testing — test scripts, test data, test suites, and libraries — which sit at the core of a test automation solution and can be enhanced to record information about their use.
- Wait mechanism Ch. 8
- A synchronization technique used in test automation: either a hard-coded fixed delay, a dynamic polling loop that checks for a state change with timeout, or an event-subscription with timeout.