Fix Android Maestro e2e: eliminate UIAutomator2 rendering race condition#38
Merged
Fix Android Maestro e2e: eliminate UIAutomator2 rendering race condition#38
Conversation
…aestro tests Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Harmonize CI on PRs and CD on main branch
Harmonize CI/CD: CI on PRs, CD on main; move Maestro e2e to CI; fix Maestro tests
Feb 22, 2026
🧪 Unit Tests & CoverageTest ResultsCoverage SummaryCoverage Gate ✅ PASSED — all tested files have ≥ 90% coverage
|
…false + longer timeouts Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD: CI on PRs, CD on main; move Maestro e2e to CI; fix Maestro tests
Harmonize CI/CD workflows and fix Android Maestro e2e tests
Feb 22, 2026
Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD workflows and fix Android Maestro e2e tests
Harmonize CI/CD: CI on PRs, CD on main; move Maestro e2e to CI; fix Maestro tests
Feb 22, 2026
…e sh -c execution) Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD: CI on PRs, CD on main; move Maestro e2e to CI; fix Maestro tests
Harmonize CI/CD: CI on PRs, CD on main; fix Android Maestro e2e tests
Feb 22, 2026
…ngular) Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD: CI on PRs, CD on main; fix Android Maestro e2e tests
Harmonize CI/CD and fix Android Maestro e2e tests
Feb 22, 2026
…nch from CI Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD and fix Android Maestro e2e tests
Harmonize CI/CD workflows and fix Android Maestro e2e tests
Feb 22, 2026
Copilot
AI
changed the title
Fix Android Maestro e2e tests: use google_apis emulator + debug build + correct YAML
Harmonize CI/CD workflows and fix Android Maestro e2e tests
Feb 23, 2026
…t upload Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
…ibility + add CI diagnostics Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Harmonize CI/CD workflows and fix Android Maestro e2e tests
Fix Android Maestro e2e tests: expose headings to Chrome WebView accessibility + harmonize CI/CD
Feb 24, 2026
…oad wait Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Fix Android Maestro e2e tests: expose headings to Chrome WebView accessibility + harmonize CI/CD
Fix Android Maestro e2e tests: pre-launch app with CDP socket detection + stopApp:false
Feb 25, 2026
…t Activity recreation Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Fix Android Maestro e2e tests: pre-launch app with CDP socket detection + stopApp:false
Fix Maestro Android e2e: correct CDP socket detection + prevent Activity recreation
Feb 25, 2026
Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Fix Maestro Android e2e: correct CDP socket detection + prevent Activity recreation
Fix Android Maestro e2e tests: add launchApp for CDP + dark background CSS
Feb 25, 2026
…ion at 60s boundary Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Fix Android Maestro e2e tests: add launchApp for CDP + dark background CSS
Fix Android Maestro e2e: resolve 60s race condition with JVM warm-up and wider timeout
Feb 26, 2026
… rendering race condition Co-authored-by: gfauredev <19304085+gfauredev@users.noreply.github.com>
Copilot
AI
changed the title
Fix Android Maestro e2e: resolve 60s race condition with JVM warm-up and wider timeout
Fix Android Maestro e2e: eliminate UIAutomator2 rendering race condition
Feb 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Maestro e2e tests consistently failed at the timeout boundary. Root cause:
launchAppcold-starts the app each flow, and Maestro's UIAutomator2 polling (~100ms interval) forces Chrome WebView to serialize its accessibility tree on Android's main thread, starving the Dioxus WebSocket. Rendering time expanded to fill exactly the timeout value (confirmed across two runs: 60.56s with 60s timeout, ~90s with 90s timeout).Changes
maestro/*.yaml— RemovelaunchAppfrom all 3 flows. The app is pre-launched by CI before Maestro starts; withoutlaunchApp, Maestro never sendsam force-stop/am start, so the already-rendered app stays alive.extendedWaitUntilpasses on the first UIAutomator2 poll.maestro/*.yaml— ReduceextendedWaitUntiltimeout90000 → 30000ms. With a pre-rendered app this is conservative; 30s covers UIAutomator2 server startup..github/workflows/ci.yml— Increase pre-launch sleep30 → 60s. App renders in ~22s without polling interference; 60s ensures it is fully rendered before Maestro initializes.💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.