Cockpit · generated test model

Which parts of the product own which tests

Rows are feature areas — the parts a person would name if asked what the app does — nested the way the product is (a Workspace holds an Inbox and Dashboards; a Dashboard holds Panels). A row that holds other rows shows its own count first and its whole subtree's in brackets. Columns are counts, never percentages — a count only tells you where to look relative to another row.

commit ec7012b generated 2026-09-30 10:44:51Z rules 819 files nothing runs 64 branches nothing takes 883 CI stability → Lead time → Test selection →
Analyzer warnings.

How to read this

L1 Unit — No real dependencies — pure logic, calculations, branching, edge cases.
L2 Integration — Real infrastructure the service owns (its own database), no other service.
L3 System — Backend services wired together at the API level, no browser. n/a with one backend service.
F1 Frontend unit — No real dependencies — component and view-model logic.
F2 Service-frontend — The frontend plus only its own service's backend.
F3 End-to-end — Everything real, a real browser. The one level mandatory per capability.
Contract Contract — Scheduled live checks against a third party. n/a for an area with no connector.
Files nothing runs source files this area owns (per concepts.json) that no test file imports at all — a file with zero tests touching it, at any level.
Branches nothing takes a specific if/?:/&& branch, in a file this area owns, where real coverage data shows one path was never exercised — e.g. an if with no else, tested only on the true side. Needs coverage data to be collected first (see the note above if it says "unknown").
Concept L1L2L3F1F2F3Contract Files nothing runs Branches nothing takes
No percentages anywhere on this page. A count is only meaningful next to another row's count — Actions has seven backend rules and Dashboards has one, and they are similar in size, so look at Dashboards. Counts reward writing more rules, so a well-pruned suite can score lower than a padded one; the table cannot tell those apart on its own.