Overview
What this challenge is about.
Drive the pricing engine with around 800 representative input vectors generated from anonymized production quotes (provided). For each vector, capture the current output as the expected value of a characterization test. Use Approval Tests-style 'snapshot' assertions where outputs are large. Reach 90 percent line coverage on the engine module. While writing tests, log every observed behavior that looks like a bug (rounding, negative discounts, currency mismatches) without fixing them — the team will triage. Deliver the test suite, a coverage report, a 'frozen bug' list with severity, and a 4-page memo on how to use the suite before any refactor.
The Brief
What you'll do, and what you'll demonstrate.
Build a characterization-test safety net for a 7-year-old untested pricing engine that pins current behavior at 90 percent coverage before any refactor touches the code.
Earning criteria — what you'll demonstrate
- Distinguish characterization tests from specification tests in legacy contexts
- Generate representative input vectors from production data without leaking PII
- Apply Approval Tests-style snapshot assertions where output shape is complex
- Report bugs separately from tests so the team can choose what to fix
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
Careers
Roles this prepares you for.
Real titles. Real skill bridges. Pick the one closest to your trajectory.
Career mappings coming soon.