Selenium Self-Healing

Keep your Selenium tests. Make locator maintenance smarter.

TestZombie adds a healing layer for broken locators to existing Java/Selenium suites — without rebuilding your test architecture.

Java + SeleniumExisting JUnit/TestNG suitesAutomatic Code Update
CheckoutTest.java
// old locator fails
driver.findElement(By.id("checkout-submit-v1")).click();

// TestZombie recovers the intended target
// healed → button[data-testid='checkout']

// successful recovery can become a durable fix
driver.findElement(By.cssSelector("button[data-testid='checkout']")).click();
Why Selenium tests break

The application is alive. The locator is outdated.

IDs become dynamic, CSS classes change and components get refactored. Everything can still work for users while an automated suite stops.

1

DOM refactoring

Structural changes invalidate XPath or CSS selectors.

2

Dynamic attributes

Generated IDs and classes are not durable selectors.

3

UI components evolve

The business target stays the same while its technical representation changes.

How it works

Selenium healing in four steps

The integration sits where your WebDriver already works.

1

Run tests as usual

Your existing Selenium tests remain the starting point.

2

Locator cannot be resolved

TestZombie receives the failed locator and current page context.

3

Identify the intended element

Alternative candidates are evaluated and a sufficiently safe match is used.

4

Write the fix back to source

Successful healings can optionally be written back to the test. The original locator stays commented and the replacement is added in a traceable way.

Integration

Add it to an existing Selenium suite

The Developer documentation includes Maven setup, driver initialization and configuration options.

Developer Guide
pom.xml
<dependency>
  <groupId>com.testzombie</groupId>
  <artifactId>testzombie-lib-java</artifactId>
  <version>1.0.0</version>
</dependency>

TestZombieDriver.setCredentials("<key>","<email>");
WebDriver driver = TestZombieDriver.createChrome();
🧟

Fewer locator fixes

Routine UI changes do not have to be investigated manually every time.

🔎

Transparent healings

See when, where and how a locator was replaced.

🛠️

Durable code fixes

Successful healings can become maintainable locator changes in source code.

📊

Central analysis

Test runs, healing logs and failure analysis come together in one cockpit.

FAQ

Frequently asked questions about Selenium self-healing

Does TestZombie work with existing Selenium tests?

Yes. The approach augments existing Java/Selenium test automation instead of requiring a new suite.

What happens if no safe replacement can be found?

The test should fail normally. Self-healing must not hide a real failure with an unsafe match.

Can I review successful healings?

Yes. Healing logs make the original locator, replacement decision and context traceable.

Can the new locator be written into the test source?

TestZombie can expose successful healings as fix recommendations and use the supported auto-update capability for test code.

TestZombie AI

Your tests should survive change.

Add healing, analysis and actionable fix recommendations to existing Selenium, Playwright and Appium tests.