DevOps & Infrastructure

Scaling Mobile Quality Assurance: How ManoMano Leveraged AWS Device Farm for Maestro-Driven End-to-End Testing

In the rapidly evolving landscape of European e-commerce, ensuring a seamless user experience across a fragmented mobile device market is a critical challenge for engineering teams. ManoMano, a prominent European online marketplace specializing in home improvement and gardening, recently navigated this hurdle by integrating Maestro—a declarative, YAML-based UI testing framework—with AWS Device Farm. This strategic shift has enabled the company to execute high-fidelity end-to-end (E2E) testing on real physical hardware, bridging the gap between local development speed and production-grade validation.

The Challenge of Mobile Fragmentation

The Android ecosystem is characterized by extreme fragmentation, with thousands of unique combinations of screen resolutions, hardware architectures, and operating system versions. For React Native developers, maintaining application quality requires rigorous testing across this spectrum. While local simulators offer a quick feedback loop, they often fail to capture the nuanced behaviors of physical hardware, such as camera integration, biometric authentication, and the idiosyncratic behavior of manufacturer-specific UI skins like Xiaomi’s MIUI or Oppo’s ColorOS.

Prior to adopting this solution, many teams relied on virtualized testing, which often resulted in "false positives"—instances where tests passed in a synthetic environment but failed in the hands of the end-user. ManoMano sought a solution that could combine the simplicity of Maestro’s test flows with the reliability of a managed, cloud-based fleet of real devices.

Run Maestro tests on real Android devices using AWS Device Farm | Amazon Web Services

Bridging Maestro and AWS Device Farm

AWS Device Farm is a cloud-based service designed to test mobile applications on a vast, managed fleet of physical devices. While the service natively supports industry-standard frameworks such as Appium, Espresso, and XCTest, it also offers a "custom test environment" feature. This capability provides developers with root-level access to the test host, effectively allowing them to run any framework that communicates via the Android Debug Bridge (ADB).

The integration process involves a structured workflow that transforms a standard testing suite into a scalable cloud operation. First, the application is packaged as an .apk file, ideally with animations disabled to prevent test flakiness caused by timing issues. Simultaneously, the Maestro test flows—defined in YAML—are compressed into a zip archive. This archive acts as the payload, which AWS Device Farm extracts into a dedicated directory during the test execution phase.

Chronology of the Implementation

The implementation process for the ManoMano engineering team followed a logical, four-stage progression designed to minimize latency and maximize reliability:

  1. Environment Provisioning: The team configured an Amazon Linux 2023 host environment within AWS Device Farm. This environment serves as the controller that interfaces with the physical Android devices.
  2. Dependency Injection: Because Maestro relies on the Java Runtime Environment, the custom test specification was programmed to download and install Amazon Corretto 21 during the initialization phase. This ensured that the host machine met all prerequisites before the Maestro CLI was installed via a direct shell script execution.
  3. Permission Management: Addressing the "security prompt" problem inherent in restrictive Android skins was a pivotal step. By pre-installing the Maestro driver as an "Extra App" and utilizing ADB shell commands to grant background execution permissions, the team successfully eliminated the need for human intervention during the test run.
  4. Execution and Artifact Collection: Once the environment was initialized, the test suites were executed sequentially. Upon completion, the system automatically gathered logs, screenshots, and video recordings, storing them as artifacts for post-mortem analysis.

Technical Implications and Data Integrity

The reliance on Maestro’s declarative syntax has had a measurable impact on developer productivity. By decoupling the test logic from the underlying implementation code, ManoMano has reduced the time required to onboard new QA engineers and lowered the maintenance burden associated with brittle, code-heavy testing frameworks.

Run Maestro tests on real Android devices using AWS Device Farm | Amazon Web Services

Supporting data from the industry suggests that E2E testing on physical devices can catch approximately 15% to 20% more defects than simulator-based testing alone. By catching these issues early in the CI/CD pipeline, teams significantly reduce the "cost of repair," which, according to various software engineering metrics, can be up to 100 times higher if a defect reaches production.

Official Perspectives and Operational Efficiency

While AWS has not issued a formal press release regarding this specific partnership, documentation surrounding the custom test environment highlights that the approach is becoming a standard for large-scale enterprise deployments. For the developer community, the ability to use Maestro—a tool celebrated for its human-readable YAML syntax—within a high-compliance, secure cloud environment like AWS, represents a significant maturation of mobile DevOps.

The cost-efficiency of this model is driven by its modular nature. Because AWS Device Farm offers both metered and subscription-based pricing, engineering teams can optimize their spending. For example, by reserving comprehensive regression testing for release candidates and utilizing lighter "smoke tests" for feature branches, organizations can maintain a high testing frequency without ballooning their cloud infrastructure budget.

Addressing Manufacturer-Specific Hurdles

A notable hurdle in this implementation was the handling of manufacturer-specific security layers. Many modern Android devices are configured to block the installation of unauthorized apps via ADB to prevent malware. In a traditional automated environment, this would cause the test to hang indefinitely. By leveraging the appops command-line utility to explicitly grant the Maestro driver the ability to run in the background, the team demonstrated a sophisticated understanding of the Android ecosystem’s security architecture. This preemptive configuration is what distinguishes a robust enterprise-grade testing pipeline from a basic automation script.

Run Maestro tests on real Android devices using AWS Device Farm | Amazon Web Services

Broader Impact on Mobile Development

The implications of this integration extend beyond ManoMano. As the mobile landscape becomes increasingly complex, the shift toward "testing as a service" using custom environments is likely to accelerate. This methodology offers three distinct advantages:

  • Hardware Diversity: It allows developers to test on the latest flagship devices alongside older, legacy models that are still widely used in emerging markets.
  • Infrastructure Agnostic Testing: By using ADB as the common denominator, teams are no longer locked into a single testing framework; they can migrate their workflows to whatever technology best serves their current needs.
  • Developer Velocity: The integration with CI/CD platforms like GitHub Actions or AWS CodePipeline ensures that tests are not just "something to do before release," but a continuous, automated checkpoint.

Future Outlook and Limitations

Despite the successes of this implementation, it is important to note the current technological limitations. As of late 2026, this specific architecture is optimized exclusively for the Android ecosystem. Maestro’s integration with physical iOS devices in a cloud environment remains constrained by Apple’s strict security model, which requires specific provisioning profiles and physical interaction that are more difficult to automate in a shared-cloud context. Consequently, teams must still utilize a hybrid approach, combining cloud-based Android testing with Mac-based CI runners for iOS.

Conclusion: The Path Forward

The experience of ManoMano serves as a blueprint for organizations aiming to professionalize their mobile QA practices. By moving away from manual device labs and embracing the scalability of AWS Device Farm, the company has effectively mitigated the risks associated with device fragmentation.

The transition from a manual, error-prone testing process to an automated, YAML-defined, and cloud-hosted solution is more than a technical upgrade—it is a strategic alignment of development and operations. As mobile applications continue to grow in complexity, the ability to perform reliable, repeatable testing on real hardware will remain a core competitive advantage for digital-first enterprises. For those looking to replicate this success, the first step is clear: assess the current testing bottleneck, identify the necessary ADB-accessible tools, and begin the transition toward a fully automated, cloud-native validation strategy.

Related Articles

Back to top button