Example

Self-Heal Options

When you access the Self-Heal option under the Tools menu, the following options will be displayed:

1. Save the reprioritized steering elements to the repository

This option enables two key self-healing actions:

  • Adjust the broken element’s attributes

  • Preserve the properties of reprioritized items for subsequent execution

Example

Let’s consider a scenario where you have captured a UI element — for example, a button and saved it in the repository. Later, the application is updated by the developer, and the element’s identifier (such as XPath or CSS selector) is modified.

Option A: Adjust the broken element’s attributes

Avo Assure automatically identifies the broken element attributes and updates them based on the current UI element’s identifiers.

  1. Before selecting Adjust the broken element’s attributes

The element in the repository has outdated properties that don’t match the updated UI.

  1. After selecting Adjust the broken element’s attributes

Avo Assure updates the element’s properties in the repository based on the live UI. The user can confirm that self-healing has occurred by viewing the updated attributes in the Element Repository, where the previously broken identifiers (e.g., CSS Selector attribute with None value) are replaced with the new, working ones (e.g., CSS Selector attribute with input[class="btn btn-primary btn-padding"]). Execution then proceeds successfully using the corrected identifiers

Option B: Preserve the properties of reprioritized items for subsequent execution

Avo Assure uses multiple attributes to identify an element —

For example:/

  • ID attribute

  • CSS selector

  • Relative XPath

  • And other available properties

These attributes are configured in a priority order within the Element Repository. During execution, Avo Assure checks each attribute in that order, starting from the highest priority, to find a match in the UI.

If a higher-priority attribute fails but a lower-priority one succeeds, Avo Assure:

  • Continues execution using the successfully matched attribute

  • (If enabled) Automatically promotes the successful attribute to a higher priority for future runs — ensuring smarter and faster identification.

Below is the screenshot showing the configured attribute priority order

Example

In this case, assume that the element was successfully identified using the Classname attribute, which was originally listed as the 6th identifier in the configured priority order.

If self-healing is enabled, Avo Assure will automatically promote Classname to the top of the priority list, ensuring it is checked first in future executions — based on its success during the last run

Option C: Using Both Options Simultaneously

When both options are selected:

  • It updates the broken attributes of the element by identifying the correct UI element using the live application and replacing outdated identifiers with valid ones.

  • It dynamically updates the priority order of attributes based on which one successfully identified the element during execution.

Example:

Let consider a Scenario by selecting both options: Adjust the broken element’s attributes and Preserve the properties of reprioritized items for subsequent execution.

At this stage, Avo Assure automatically updates the element’s identifiers to reflect the current UI structure. Additionally, the attribute that successfully identified the element during execution is promoted in the priority order, ensuring more reliable recognition in future test runs.

2. Discard the changes after the execution

Reports Generated After Using Self-Heal Feature

After configuring Self Heal for the dynamic element and executing the execution list, the user can validate in the Reports how the self-healed element was recovered.

  • Under the "Recovered By" column you can review the Attribute used to recover the element.

Last updated

Was this helpful?