Fixtures Reference
The Intel® ESQ framework provides a set of pytest fixtures that are automatically available to all test functions. These fixtures handle caching, validation, reporting, and configuration loading.
Core Fixtures
request
Type : pytest.FixtureRequest
Scope : function
Description : Standard pytest request object for accessing test metadata.
Usage :
test_name = request . node . name . split ( "[" )[ 0 ]
configs
Type : Dict[str, Any]
Scope : function
Description : This function tests configuration parameters merged from the active profile and config.yml.
Usage :
test_id = configs . get ( "test_id" , "T0000" )
devices = configs . get ( "devices" , [ "cpu" ])
timeout = configs . get ( "timeout" , 300 )
Cache Fixtures
cached_result
Type : Callable[[Optional[Dict]], Optional[Union[Result, Dict]]]
Scope : function
Description : This function retrieves cached test results if available and returns None on a cache miss.
Usage :
cached_data = cached_result ( cache_configs = { "key" : "value" })
if cached_data :
return cached_data
cache_result
Type : Callable[[Union[Result, Dict], Optional[Dict]], None]
Scope : function
Description : This function stores test results in the cache for future runs.
Usage :
cache_result ( results , cache_configs = { "key" : "value" })
Validation Fixtures
validate_system_requirements_from_configs
Type : Callable[[Dict[str, Any]], None]
Scope : function
Description : This function validates that the system meets all requirements defined in configs and calls pytest.skip if any requirement is not met.
Usage :
validate_system_requirements_from_configs ( configs )
See System Requirements for all available flags.
validate_test_results
Type : Callable[..., Dict[str, Any]]
Scope : function
Description : This function validates test results against KPI thresholds.
Parameters :
Parameter
Description
results
Result object or dict
configs
Test configuration dict
get_kpi_config
KPI config retrieval fixture
test_name
Test identifier string
mode
"all" (default) or "any" — whether all or any KPIs must pass
Usage :
validation_results = validate_test_results (
results = results ,
configs = configs ,
get_kpi_config = get_kpi_config ,
test_name = test_name
)
# Returns: {"passed": bool, "validations": {...}, "skipped": bool}
Execution Fixtures
execute_test_with_cache
Type : Callable[..., Union[Result, Dict]]
Scope : function
Description : This function executes test logic with automatic caching support and returns cached results on a cache hit. It also executes run_test_func on a cache miss and caches the result.
Parameters :
Parameter
Description
cached_result
Cached result fixture
cache_result
Cache result fixture
run_test_func
Callable that runs the test and returns a Result
test_name
Test identifier string
configs
Test configuration dict
cache_configs
Optional dict of cache-specific configuration
name
Step name shown in Allure (default: "Analysis")
Usage :
results = execute_test_with_cache (
cached_result = cached_result ,
cache_result = cache_result ,
run_test_func = lambda : execute_my_test (),
test_name = test_name ,
configs = configs
)
prepare_test
Type : Callable[..., Any]
Scope : function
Description : This function runs an asset preparation function with Allure progress tracking. Use this to download models, videos, or set up other dependencies before the main test.
Parameters :
Parameter
Description
test_name
Test identifier string
prepare_func
Callable that performs the preparation work
configs
Test configuration dict
name
Step name shown in Allure (default: "Preparation")
Usage :
prepare_test (
test_name = test_name ,
prepare_func = lambda : download_models (),
configs = configs ,
name = "Assets"
)
Reporting Fixtures
summarize_test_results
Type : Callable[..., None]
Scope : function
Description : This function generates a test result summary and attaches it to the Allure report.
Parameters :
Parameter
Description
results
Result object
test_name
Test identifier string
configs
Test configuration dict (optional)
get_kpi_config
KPI config function (optional)
iteration_data
Per-iteration metric data (optional)
enable_visualizations
Generate charts (default: False)
Usage :
summarize_test_results (
results = results ,
test_name = test_name ,
configs = configs ,
get_kpi_config = get_kpi_config
)
Suite Fixtures
suite_configs
Type : Dict[str, Any]
Scope : function
Description : This function loads the suite-level configuration from config.yml in the test directory.
Usage :
kpis = suite_configs . get ( "kpi" , {})
get_kpi_config
Type : Callable[[str], Optional[Dict[str, Any]]]
Scope : function
Description : This function retrieves a KPI configuration dict by name from config.yml.
Usage :
kpi_config = get_kpi_config ( "inference_time" )
if kpi_config :
reference = kpi_config [ "validation" ][ "reference" ]
Related Pages