Self-Healing
Applications change. Buttons move, labels get reworded, and flows get reshuffled. Self-Healing lets a QA Flow keep its tests green through those changes by repairing test cases instead of failing them.
When healing applies
Section titled “When healing applies”Self-Healing only applies to drift, not to bugs. After a test runs, the agent evaluates it and distinguishes two situations:
- Needs Healing — The test still reached its expected outcome, but the agent got there via a different path than the planned steps. This is drift: the test is out of date, not the application. Self-Healing targets exactly these cases.
- Failed — The expected outcome was not reached. This typically means an actual bug. Healing does not fire here, because changing the test would hide a real problem.
How a repair is produced
Section titled “How a repair is produced”When a test needs healing, the agent runs a two-step workflow:
- Analyze the failure — It classifies the cause (locator, assertion, timeout, flow change, or environment), decides whether it’s healable, and proposes a repair.
- Generate the repair — For a healable case, it produces concrete updated steps (and, where relevant, an updated expected outcome), along with a confidence score.
If the analysis concludes the issue is an actual bug or isn’t healable, no repair is applied and the attempt is recorded for your review.
Reviewing and accepting repairs
Section titled “Reviewing and accepting repairs”You control whether repairs apply automatically or wait for review. When configuring a QA Run, two options govern healing:
- Auto-heal on drift — Automatically generate a repair when a test drifts. With this off, no repair is generated until you click Heal on the test.
- Auto-accept healing — Apply a generated repair without manual review. With this off, the repaired version shows up as pending acceptance so you can review it first.
Repairs are gated by confidence: a low-confidence repair is held back rather than applied. Each healing attempt is recorded on the test case — including the failure analysis, the proposed repair, its confidence, and whether it was applied, pending, or rejected. You can approve or reject a pending repair from the test’s healing panel.
Versioning
Section titled “Versioning”Every applied repair creates a new version of the test case, marked as self-healed, with the reason for the change. Because every change is versioned, you can review what healing did and roll back to an earlier version if a repair wasn’t what you wanted. See Creating QA Flows for more on test-case versioning.