PyCon AU 2025

Self-healing system for UI tests using ML
2025-09-13 , Ballroom 1

A system that applies machine learning to make UI tests more resilient by automatically detecting and fixing broken selectors, reducing rework and increasing test stability.


Broken selectors are one of the leading causes of instability in UI test suites. Even minor interface changes — like renaming an attribute or moving a component — can break automated tests, leading to false negatives, increased maintenance effort, and frustration for teams. This kind of fragility slows down CI/CD pipelines and undermines confidence in test automation as a reliable safety net during software delivery.

This talk presents the design and development of a self-healing system for UI tests that leverages machine learning to make test suites smarter and more resilient. I’ll walk through the key ideas, the motivation behind building such a system, and the main technical challenges encountered during its development. The presentation will cover how this approach helps tests automatically adapt to UI changes, reduces manual rework, and improves the flow of continuous integration and delivery.

Attendees will leave with insights into how machine learning can strengthen test automation, inspiration to enhance their own frameworks, and a deeper understanding of what’s possible when combining ML with UI testing.

I am a Software Quality Engineer at Red Hat and I work creating test frameworks and test automation in Python, Golang and Ruby. I am also a passionate programmer and an Open Source and Agile Testing enthusiast.