Uncovering breaking changes behind UI on mobile applications
summary
Mobile app analytics break when UI lifecycle changes (Android activities/fragments call onCreate/onResume differently) or when components get reused or rewritten (Objective‑C → Swift), producing duplicate or missing event logs. The solution captures HTTP/HTTPS requests through a local proxy launched before the app and drives tests with Appium + Ruby proxy, swaps endpoints at runtime by change endpoint via process args/intent args so no rebuild is needed, parses JSON bodies and captured JSON bodies and counted events to flag surprising deltas before release.
AI-written summary · about
chapters (28)
- 0:00Intro
- 0:49Topics
- 1:36App: Long running app
- 3:01Situation: Collecting user flow
- 6:26User events, flow
- 6:49Events to track actions
- 7:25Detect the action
- 7:39Send the log to the server
- 9:35Android
- 9:57Lifecycle: Activity & Fragment
- 11:49Easy to mistake
- 12:26From App History?
- 16:22Change their implemented languages
- 17:25Prototype, Implement more
- 19:28Wrap up the issue behind UI
- 21:01HTTP proxy server
- 21:14How to capture the network?
- 24:05How to connect to the proxy server?
- 25:31Test Communication flow between the Appium client to servers
- 27:44Basic Appium flow
- 28:16Appium's test lifecycle
- 28:57Espresso/XCTest
- 32:06Test suite
- 33:40Summary
- 35:43Process arguments
- 37:36Packages, instrument args
- 41:19Takeaways
- 42:35Simulating push notification, launch via history
related talks
23mMobile App Crashes in Production: Lessons Learned from a Tester’s Viewpoint
50mAn Exploration of Debugging Techniques and Tools
37mMobile Testing: Pinpointing Invisible Problems
02mMobile Real User Monitoring
18mThe Last Inch Problem in Mobile Observability
28mMobile Application Performance Done The Right Way
44mEfficient Android app monitoring
27mBuilding Observability into Your iOS App Platform
