Glossary

decorator

A Python decorator that wraps a function to add functionality. In FailExtract, the extract_on_failure() decorator wraps test functions to automatically capture failure information.

fixture

A pytest feature that provides reusable test data, setup, and teardown functionality. FailExtract can automatically extract fixture information during test failures.

formatter

A component that converts test failure data into specific output formats like JSON, XML, CSV, Markdown, or YAML.

output format

The format in which test failure reports are generated. FailExtract supports multiple formats including JSON (always available), XML, CSV, Markdown, and YAML (optional).

singleton

A design pattern that ensures only one instance of a class exists. FailExtract uses a singleton pattern for the FailureExtractor class to maintain centralized failure collection.

thread-safe

Code that can be safely executed by multiple threads concurrently without data corruption. FailExtract’s core classes are thread-safe to support parallel test execution.

context extractor

A component that analyzes code and extracts relevant context information around test failures, including source code, dependencies, and variable states.

optional dependency

A package dependency that is not required for core functionality but enables additional features. FailExtract uses optional dependencies for features like YAML formatting.

progressive enhancement

A development approach where basic functionality works without optional features, and additional capabilities are added when optional dependencies are available.

graceful degradation

The ability of software to continue functioning when some features or dependencies are unavailable, providing helpful error messages and fallback behavior.