Testing¶
The tests run, cover the code and really test it.
Each level adds measures; a level is reached when its measures and all measures below meet their thresholds. Measures and levels are fixed by the danwos model (The fixed danwos model deci... (DEC_DANWOS_MODEL)); a project only says where the results come from.
Level 1 – Sketched¶
Smoke test: starts, --help runs.
Level 2 – Shaped¶
Unit tests pass, coverage ≥ 30 %.
Level 3 – Solid¶
Integration and E2E tests pass, coverage ≥ 60 %.
Level 4 – Refined¶
Mutation score ≥ 60 % (quawa), coverage ≥ 80 %, flake rate < 2 %.
Level 5 – Audited¶
System tests on all target platforms, performance baseline (no regression > 10 %), mutation ≥ 80 %.
Possible checks¶
Examples – which check feeds which measure is the project’s choice.
smoke script: start,
--helpunit tests with coverage: vitest, pytest (JUnit, lcov, cobertura)
integration and E2E: Playwright, pytest
mutation testing: Stryker, mutmut – called by quawa
flake rate from the result history
benchmark runs with a baseline