- What was implemented
- Created features/coverage_threshold_config.feature containing 11 BDD scenarios to exercise coverage threshold configurations.
- All 15 step functions in features/steps/coverage_threshold_config_steps.py are now exercised by the new scenarios.
- Scenarios cover:
- pyproject.toml coverage config (7 scenarios)
- noxfile.py coverage session (2 scenarios)
- CI workflow (1 scenario)
- nightly quality workflow (1 scenario)
- All 11 scenarios verified to pass against actual project configuration values.
- Key design decisions
- Used the exact step text from the step file to ensure proper Gherkin-to-step matching.
- Nightly workflow threshold set to 85 (matching the actual --coverage-min 85 value in nightly-quality.yml).
- Noxfile threshold set to 97 (matching COVERAGE_THRESHOLD = 97 constant).
- Organized scenarios into logical groups with comments for readability.
- Modules/components affected
- features/coverage_threshold_config.feature (new feature file)
- features/steps/coverage_threshold_config_steps.py (all steps now exercised)
ISSUES CLOSED: #2767
Consolidate 141 BDD feature files that each complete in under 0.1 seconds
into 25 domain-grouped feature files, reducing subprocess count from 339
to ~223. Each consolidated file groups scenarios from the same domain/module
that share step definitions and fixtures. All scenarios are preserved with
clear comment headers indicating their original source file.
This reduces subprocess overhead by ~116 invocations (141 original files
replaced by 25 consolidated files), targeting the 42% of subprocess count
that contributed only 0.2% of actual test runtime.
ISSUES CLOSED: #485