Skip to content

Everyday QA: Building Resilient Automation in Dynamic UI Environments

Author: The MuukTest Team

Published: June 10, 2025

Automation in Dynamic UI Environments
Table of Contents
Schedule

One of the perks of having expert QAs navigate our customers’ journey using our AI-powered tools is that certain details can be spotted in order to redirect or add-on to the process that’s already in place. That’s why we’ve now started this section titled Everyday QA where we take moments of bug fixes MuukTest’s team has solved for customers.

 

MuukTest is an expert in integration testing

 

Consistent Stability and Targeted Bug Resolution

Jorge Juarez and David Zarate from MuukTest reported that recent automated regression runs on new versions of a customer’s app showed no new critical bugs, a testament to the stability of the product and the effectiveness of current testing efforts.

However, the team did identify and continued to monitor a couple of intermittent issues:

  • Facebook Button on "Create Account" Screen: This specific bug appears to be primarily reproducible on emulators rather than real devices, suggesting it might be an environment-specific quirk rather than a core product defect.
  • Playlist Not Refreshing (My Playlist Section): Users, when creating a new playlist, might experience a slight delay before it appears on the home screen. While initially flagged as a bug, further investigation revealed it's likely a performance delay rather than a functional failure. The MuukTest team plans to incorporate timing buffers and potential page refresh logic into their automation scripts to account for this behavior, ensuring the automation accurately reflects the user experience without prematurely flagging it as a defect.

These discussions highlight MuukTest's meticulous approach to bug reporting, distinguishing between genuine product issues and environmental or performance-related nuances.

 

The Evolving Challenge of UI Selectors: A Deep Dive into Automation Resilience

A significant portion of the conversation revolved around a critical challenge faced by the automation team: frequent changes in UI selectors. This issue, stemming from both the customer’s internal development choices and updates to testing frameworks, has a direct impact on the efficiency of automated regression.

The customer’s team explained that their transition to newer UI frameworks like Compose and SwiftUI means that traditional UI element IDs, prevalent in older XML or UI Kit approaches, are no longer inherently present. The UI is now built programmatically, and while accessibility tags are added for features like voiceover, how the operating system (OS) or testing libraries (like Appium) interpret and expose these elements for automation can be inconsistent and unpredictable. This makes it challenging for MuukTest to reliably identify and interact with elements after a new build.

According to David, "It's time-consuming. We need to launch the iteration, find a discrepancy, fix it, relaunch it over and over."

To combat this, both teams are exploring solutions:

  • Developer Communication: The MuukTest team emphasized the immense help it would be to receive communication from the development team about changes made to specific UI modules or components. While providing a precise list of new selectors is difficult, knowing which areas of the UI have undergone significant changes would allow MuukTest to proactively focus their selector updates.
  • Exploring New Selector Strategies: MuukTest is investigating the adoption of UI Automator 2 syntax and more dynamic XPath strategies. This involves designing selectors that are less reliant on static IDs and more on contextual information, such as finding the "first view" or "first text" after a known element, particularly for dynamic content like song lists. This adaptive approach aims to build more robust and resilient automation.
  • Collaborative Investigation: Both teams committed to continued investigation. The customer will look into whether any form of code comparison or text-based search can identify changes that might impact selectors, while MuukTest will test the new selector strategies in the coming weeks.

This open dialogue exemplifies a true partnership, where both sides acknowledge the technical complexities and commit to finding innovative solutions together.

 

 

Charting the Future: Strategic Planning for Enhanced Collaboration

Looking ahead, the customer wants to discuss long-term strategy and new requirements for the QA partnership. This proactive step aims to align expectations, explore future enhancements to their testing processes, and ensure the collaboration remains a win-win for both companies. The goal is to prepare thoroughly, allowing the customer more time to analyze the code and propose the most effective ways to integrate QA efforts.

 

MuukTest tests mobile, desktop and web applications

 

A Partnership Built on Adaptability and Shared Goals

The ongoing collaboration between MuukTest and the customer demonstrates the vital role of adaptability and open communication in successful software development. 

By meticulously identifying and addressing bugs, collaboratively tackling the complex challenge of dynamic UI selectors, and strategically planning for future needs, both teams are ensuring the continued quality and reliability of the customer’s products. This strong partnership allows the client’s app to maintain high standards while continually evolving its features for its users.