Skip to content

Course: Self-healing — 5. Healing profiles, step by step

A complete walk through healing profiles on app.autotestx.com, step by step, with the exact result you should see after each one. Use it to learn the feature by trying every part of it once, or to check it works in your organization. For the ideas behind it, read How healing ranks candidates; for shorter, explained exercises, see How healing ranks candidates: exercises.

Section What it covers
A. A preset per application The ranking card, the preset picker, its preview, and “Use” / “Keep”
B. The project’s thresholds The dialog, Save waiting for a preview, a pair that crosses, saving
C. A run uses them A stricter bar turns a heal the run acted on into a suggestion
D. Your organization’s own profile The editor, the 50% rule, an edit previewed first, a delete refused
E. Minimum thresholds The defaults raised, a project held to them, and the rules they hold back
F. Weights from review decisions “Not enough to go on yet”
G. The audit trail Every change above, in words
Z. Clean up Putting everything back

Tick the Result column as you go. Text in quotes is the exact wording you should see.

Time needed: about 50 minutes. Do the sections in order: each one starts from where the one before left off.

  • You need to be an organization administrator: sections D and E change organization settings.
  • Use a practice organization. Sections D and E add a healing profile and minimum thresholds to the whole organization, and minimums apply to every project in it and to its rules. In a practice organization nothing else is affected. If you must use your real one, do D and E when nobody is running tests, and finish with section Z.
  • A colleague (or a second email address of yours) plays a second person, called Bob below, to see what a Test Developer may and may not change.
Who Window Role
You A normal browser window: Window A Organization administrator, project Admin
Bob A private window (Edge InPrivate, Chrome Incognito), or your colleague’s computer: Window B Organization Member, project Test Developer

Download toolbar.json: a test called Toolbar. It opens a small page built into the test, clicks Save, then clicks Cancel. Its Open step’s URL picks a release of the page: release 2 gives the Save button a new id, class and text (“Save record”), so a run against it has to heal the Click Save step. That one heal is the history every preview below replays.

Two numbers decide every heal. Confidence is how much the best element on the page looks like the one the step used to click; lead is how far ahead of the next candidate it is. A run acts on the element only if its confidence reaches the bar for the step’s risk and its lead is big enough; otherwise the heal is only suggested, for a person or a rule to decide. A preset or profile changes how confidence is weighed; the project’s thresholds change the bars.


0.1 Sign in. Window A: open https://app.autotestx.com and sign in.

0.2 A practice organization and project. Create an organization Healing practice org with a project Healing practice. (If you use an existing organization, create just the project Healing practice.)

0.3 Invite Bob. Organization → Members → Invite: Bob’s email, organization role Member, add to Healing practice with project role Test Developer. Bob opens the invitation email in Window B, sets a password and signs in. Then go back to Window A.

0.4 One application. Window A, in Healing practice: Applications → New application, name Toolbar app, Save. Keep it the project’s only application: with one application, every run counts as that application’s.

0.5 Import the test. Test Cases → Import → the toolbar.json you downloaded. The editor opens Toolbar.

0.6 A first run. Run test with No environment: three green steps. This run records each button as its last known good element.

0.7 One heal. Click the Open step and change its URL from {{release1}} to {{release2}}. Press Ctrl+S, then Run test again. Click Save is marked Healed: the run found the renamed button at 80% and clicked it. A banner says “1 self-healing suggestion is waiting for review”. Leave it pending: do not approve it.


ID Steps Expected Result
A1 Window A: Self-healing → Rules. Under the daily limit, a card: “A run acts on a healed element at 70% similarity on a low-risk step and 78% on a medium-risk one, when it leads the next candidate by 12%; from 50% it suggests. The defaults. High-risk steps never act on a healed element.” Below it one row: Toolbar app, a picker showing Balanced, and “For most applications: stable ids and test hooks count most, then the name and label.”
A2 Open the picker. Four choices: Balanced, Generated ids, Test hooks, Dense grids. Hovering one shows when to use it.
A3 Pick Dense grids. Nothing is saved yet. Below the row: “Replaying recent heals…”, then a box: “Replayed 1 heal from the last 30 days with Dense grids for Toolbar app:”, “Every heal would have picked the same element.”, “1 heal decided as before.” Two buttons: “Use Dense grids” and “Keep Balanced”.
A3b Without choosing, pick Generated ids, then Test hooks, reading each box. The same result for both: the same element, “1 heal decided as before.” This page’s drift is one each preset handles alike.
A4 Click Keep Balanced. The box closes and the picker shows Balanced again. Reload (F5): still Balanced.
A5 Pick Dense grids again, wait for the box, click Use Dense grids. Toast “Toolbar app: Dense grids ranking”. The row shows Dense grids and its description.
A6 Pick Balanced, then Use Balanced. Back to Balanced, for the rest of the plan.
A7 Window B: Self-healing → Rules in the Healing practice project. The same card, but Toolbar app shows “Balanced” as text: no picker, and no Change button. A Test Developer can read the ranking but not change it.

ID Steps Expected Result
B1 Window A: in the ranking card, click Change. A dialog “Healing thresholds”, with Use the defaults selected. Footer: “Preview against history”, Cancel, and Save greyed out. Hovering Save: “Preview against history first”.
B2 Select Set this project’s own. Four fields: “Act on a low-risk step from (%)” 70, “Act on a medium-risk step from (%)” 78, “Lead over the next candidate (%)” 12, “Suggest from (%)” 50. Each says its range and default, e.g. “60% to 99%; default 70%.”
B3 Set the low-risk field to 80. Click Preview against history. A red line: “The medium-risk bar (78%) cannot be below the low-risk bar (80%).” Save stays greyed out.
B4 Set the low-risk field to 99 and the medium-risk field to 99. Click Preview against history. A box: “Replayed 1 heal from the last 30 days with these thresholds:”, “Every heal would have picked the same element.”, “1 acted on during the run → only suggested”, “0 heals decided as before.” Save is now enabled.
B5 Change the margin field to 13. The box disappears and Save is greyed out again: the preview was for other values.
B6 Set the margin back to 12. Preview against history, then Save. Toast “Saved this project’s thresholds”. The card now reads “…at 99%… and 99%…” and “This project’s own thresholds.”

ID Steps Expected Result
C1 Window A: open Toolbar and Run test (still release 2). The run fails at Click Save. Its error ends “Self-healing: Found a likely match (80%), below the 99% needed to act on a medium-risk step.” The heal is still offered for review.
C2 Back on Self-healing → Rules: Change → Use the defaults → Preview against history → Save. Toast “Back to the default thresholds”. The card says 70% and 78% again, and “The defaults.”
C3 Run test on Toolbar again. Click Save is Healed again: the run acts on the match at the default bars.

ID Steps Expected Result
D1 Window A: Organization → Projects. Under the daily limit card, a card “Self-healing · how candidates are ranked” with “No profiles of your own yet: applications choose among the built-in presets.” and “Minimum thresholds: none - projects may use the full ranges.”
D2 Click New profile. A dialog “New healing profile”: Name, Start from (Balanced), “When to use it”, and three groups of weights: “What it is known by”, “What kind it is”, “Where it sits”. Below them: “What an element is known by carries 65% of the weight; at least 50% is required…”. Save is greyed out until there is a name.
D3 Name it Toolbar forms. Set Nearest heading, Ancestor ids, Table row and Position to 5. The four names turn blue: they differ from Balanced. The line turns red: “…carries 39% of the weight…”, and Save is greyed out.
D4 Set the four back to 1, and set Label to 2. “…carries 65% of the weight…”, no longer red, and only Label is blue. Save is enabled.
D5 Click Save. Toast “Saved “Toolbar forms”“. The card lists “Toolbar forms v1 · based on Balanced”, “Not used yet · changed by your name”, with Edit and Delete.
D6 Self-healing → Rules, open the Toolbar app picker. Two groups: “BUILT IN” with the four presets, and “YOUR ORGANIZATION” with Toolbar forms.
D7 Pick Toolbar forms, wait for the box, click Use Toolbar forms. Toast “Toolbar app: Toolbar forms ranking”.
D8 Back on Organization → Projects, click Edit on Toolbar forms. ‘Edit “Toolbar forms” (v1)’. Near the bottom: “Used by Toolbar app (Healing practice): saving changes how their next runs heal.” Save is greyed out; the footer has Preview against history.
D9 Set Label to 2.5. Click Preview against history. A box: “Replayed 1 heal from the last 30 days with these weights:”, “Every heal would have picked the same element.”, “1 heal decided as before.” Save is enabled. (When a preview here does list a step, it says “Click Save · Healing practice”: the project, never the test, since an organization administrator may not see every project’s tests.)
D10 Click Save. The card shows “Toolbar forms v2” and “Used by Toolbar app (Healing practice)”.
D11 Click Delete on Toolbar forms and confirm. Red toast: ‘“Toolbar forms” is used by Toolbar app (Healing practice). Choose another profile for them first.’ It is still listed.
D12 Window B: Organization → Projects. Your colleague sees the card and Toolbar forms, but no New profile, Edit, Delete or Change.

ID Steps Expected Result
E1 Window A: Organization → Projects, in “Minimum thresholds” click Change. Four empty fields, e.g. “Act on a medium-risk step from at least (%)”, each with “none (default n%)” greyed in. “Leave a box empty for no minimum…” below.
E2 Type 90 in the medium-risk field. Save. Toast “Saved the minimum thresholds”. The line reads “Minimum thresholds: no project may act on a medium-risk step below 90%.”
E3 Self-healing → Rules. The card says “…90% on a medium-risk one…” and “The defaults, raised to your organization’s minimums.” (The heal from setup step 0.7, at 80%, would now only be suggested.)
E4 Change → Set this project’s own. Look at the medium-risk field. Its hint reads “90% to 99% (the organization’s minimum); default 78%.”
E5 Set the medium-risk field to 85. Preview against history. Red line: “The medium-risk bar cannot be below the organization’s minimum of 90%.” Click Cancel.
E6 Click New rule. Name Fix medium heals. Action: Apply automatically. Risk: untick low, tick medium. Minimum confidence: 85. A red line: “minConfidence 0.85 is below your organization’s minimum of 0.9 for automatic fixes. Raise it, or keep the rule disabled.”
E7 Untick Enabled at the bottom. The red line goes away: a disabled rule fixes nothing. Click Save: the rule is listed, marked Disabled.
E8 Click Enable on it. Red toast with the same “below your organization’s minimum of 0.9” message. It stays Disabled.
E9 Edit it: Minimum confidence 92, tick Enabled, Save. Saved; the rule is enabled (and Dry run).
E10 Organization → Projects → minimums Change: medium-risk 95. Save. Back on Rules. The rule card now has a red line: “Asks for 92%, below your organization’s minimum of 95%: fixes under the minimum wait for review. Raise it, or disable the rule.”
E11 Click Disable on it. Toast “Disabled “Fix medium heals”“. The red line is gone: switching a rule off always works.
E12 Organization → Projects → minimums Change: clear the field, Save. “Minimum thresholds: none - projects may use the full ranges.”

ID Steps Expected Result
F1 Window A: Organization → Projects → Edit on Toolbar forms. Click Suggest from review decisions. In a practice organization: “Not enough to go on yet: 0 decisions, and it needs at least 20, with 5 approved and 5 rejected.” The weights do not change. (The heal from setup step 0.7 is still pending: only a person’s approve, reject or revert counts.) In an organization with enough decided heals, the weights change instead and the changed ones are highlighted, with how many decisions they rest on. Either way, click Cancel: nothing is saved.

ID Steps Expected Result
G1 Window A: Self-healing → Audit trail → Rule changes. “Healing ranking changed” entries, newest first, among them: “Toolbar app: Balanced → Dense grids” (A5); “This project’s thresholds: suggest 50%, margin 12%, act at 70% low / 78% medium → suggest 50%, margin 12%, act at 99% low / 99% medium” (B6); ‘Organization profile “Toolbar forms” created’ (D5); “Toolbar app: Balanced → Toolbar forms” (D7); ‘Organization profile “Toolbar forms” changed to v2: label 2 → 2.5’ (D10); “Organization minimums - this project’s thresholds: … → …” (E2, E10, E12).
G2 Click Verify integrity. “Intact: all n entries of this project’s trail chain together.”

Put back everything this check changed. In a practice organization you have no further use for, Z5 and Z7 are enough: deleting its project and then the organization removes the rest.

ID Steps Expected Result
Z1 Window A: Self-healing → Rules: set Toolbar app back to Balanced (pick it, then Use Balanced). “Toolbar app: Balanced ranking”.
Z2 Organization → Projects: Delete on Toolbar forms, and confirm. The profile is gone: “No profiles of your own yet…”.
Z3 Check the line “Minimum thresholds”. “none - projects may use the full ranges.” If not, Change, clear every field, Save.
Z4 Self-healing → Rules: Delete the rule Fix medium heals. Pending: Reject the Click Save suggestion. No rule and nothing pending from this check.
Z5 Test Cases: delete Toolbar. Applications: delete Toolbar app. The project is empty again; delete it too if you created it for this check.
Z6 Close Window B. Bob’s session ends with it. Remove him from the organization if he only joined for this check.
Z7 Practice organization only: Organization → Projects → Rename organization → Delete organization, and confirm. It is deleted. Only an organization with no projects can be deleted, so do Z5 first.