Outcomes
The “latest result”
A test point can have a history of results. TestPulse takes the most recent one (by completion date) — that is the outcome and the last run date you see. Change the scope and the latest is recomputed for that plan, in memory, with no new read.From outcomes to a verdict
The execution verdict is a pure reduction with strict precedence:- Any Failed → Not OK
- Otherwise any non-passed (Blocked, Not Applicable, Not Executed, None) → Not Run
- Only 100% Passed → Passed
- No linked test → Not covered
None vs Not Executed: None means the point has no result object at all; Not Executed means a result exists but the run hasn’t happened. Both read as Not Run.
Unstable tests
A test is flagged unstable when its outcome flips between consecutive runs often enough to cross your configured threshold. Only real executions count — Passed, Failed, Blocked, Inconclusive. Blocked is an execution: the tester tried and recorded an obstacle.None and Not Executed are absences of execution, and an absence cannot be a flip: a test run once, preceded by a point that was never executed, is no longer reported as 100% unstable.
A case needs two genuine executions before instability means anything at all.
The same calculation and the same threshold now drive every surface — the report tab, the notification, the executive summary, the HTML export and the PDF. Before v2.51.0 two of them used a hardcoded threshold, so the same report could call a test unstable in its PDF and stable in its notification.
Full history
The Full history tab lists every result TestPulse could read, one row per execution, each carrying its run number — so a row can be traced straight back to Azure DevOps. You may see more rows here than Azure DevOps shows on the test point itself. Both are right: Azure DevOps hides runs that published no outcome, TestPulse keeps them, markedNone. Hovering that status says so explicitly. The instability calculation ignores them, which is why a case can show, say, nine history rows and five runs.
Related
The Test coverage tab
Where the verdict appears.
Traceability & hierarchy
The bug behind a failure.