Mobile Development 7 min read

Mobile App UI Automation Using ATX and Python: POM, Data‑Driven and Keyword‑Driven Approaches

This article describes how a mobile development team adopted the ATX automation framework with Python, employing Page Object Model, data‑driven and keyword‑driven techniques to replace manual regression testing, integrate firmware interaction, and streamline test execution and reporting.

360 Quality & Efficiency
360 Quality & Efficiency
360 Quality & Efficiency
Mobile App UI Automation Using ATX and Python: POM, Data‑Driven and Keyword‑Driven Approaches

Background – The project team follows an agile development model where rapid post‑release fixes require extensive regression testing. Manual regression was time‑consuming and error‑prone, prompting the team to explore automated testing solutions.

Technical Solution – The team evaluated ATX (Automotive Test Exchange Format) and chose a combination of ATX and Python. They adopted the Page Object Model (POM) to separate UI elements, logic, and data across three layers: base page, test case, and test data. Data‑driven testing uses Excel, CSV, YAML or databases to feed inputs, while keyword‑driven testing encapsulates reusable business logic into named functions. ATX’s Python libraries (openatx, uiautomator2 for Android, facebook‑wda for iOS, adbutils for ADB interaction) provide cross‑platform support, and the WEditor tool simplifies element inspection and script debugging.

Implementation Process – After setting up a Python 3 environment, the team installed uiautomator2, weditor, and related packages via pip. They configured conf.json in the project root, initialized devices, and verified connectivity with adb devices . Common issues such as missing phone drivers or disabled USB debugging were addressed. The automation scripts handle serial‑port communication with firmware, allowing simultaneous firmware and UI testing. A simple visual interface was created with buttons for selecting a serial port, opening the port, receiving device logs, and starting fast‑connect tests, reducing manual steps.

Summary – ATX offers a lightweight, Python‑only alternative to Appium for mobile UI automation, with faster setup, easier configuration, and built‑in support for mixed‑app testing and standardized OTX hardware tools. While ATX simplifies many aspects, it is not compatible with Appium’s WEditor, so both cannot run concurrently.

pythonmobile automationATXPage Object ModelData‑driven testingKeyword‑Driven Testing
360 Quality & Efficiency
Written by

360 Quality & Efficiency

360 Quality & Efficiency focuses on seamlessly integrating quality and efficiency in R&D, sharing 360’s internal best practices with industry peers to foster collaboration among Chinese enterprises and drive greater efficiency value.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.