Test health monitor
Goal: Catch flaky tests before everyone learns to re-run and ignore them.
What it does
Daily, a schedule checks for flaky or repeatedly failing tests. It files a ticket for each test that either failed and then passed on a re-run with no code change (flaky), or failed more than once in the window with no code change to explain it. This catches test rot early, before a flaky test becomes something everyone just re-runs and ignores.
The plugin
tessl/test-health reads recent CI history, finds the unstable tests, and files a ticket for each one worth fixing. Install it with:
Define the schedule
Run it every day at 6:00 UTC. Add this entry to the schedules block in your project's tessl.json, and keep any other entries already in that block. Replace production with the name of your environment (see the Schedules overview for the prerequisites).
Add the schedule entry
Validate and push
Signed out, validation checks the local file only. Signed in, with a name that identifies your project, it also runs the checks Tessl applies when the file syncs and when a run starts. Commit and push the change, then confirm Tessl applied the schedule in your workspace before checking its run history.
Check the runs
Open the schedule in the web app, or run tessl schedule runs <id> to see its run history.
Customize with instructions
Set the bar for what counts by adding instructions inside the same entry's action. Keep all other entries in the schedules block:
Create your own
Want a different behavior? Create your own plugin that reads test results over time and flags the unstable ones your way.