Skip to content

ci: upload maestro junit reports and full test artifacts#7332

Closed
diegolmello wants to merge 1 commit into
developfrom
chore/maestro-ci-upload-junit-and-logs
Closed

ci: upload maestro junit reports and full test artifacts#7332
diegolmello wants to merge 1 commit into
developfrom
chore/maestro-ci-upload-junit-and-logs

Conversation

@diegolmello
Copy link
Copy Markdown
Member

@diegolmello diegolmello commented May 18, 2026

Proposed changes

The iOS / Android Maestro workflows only uploaded *.png under ~/.maestro/tests. JUnit XML reports (maestro-report.xml, maestro-rerun-round-*.xml produced in CWD by .github/scripts/run-maestro.sh) and Maestro's per-flow command logs and recordings were discarded, so a CI failure surfaced only as a screenshot of the final state — not the failing step name, not the step trace.

This made shard-level flakes (e.g. the recurring deeplink.yaml → helpers/create-account.yaml username-field flake on iOS shard 6) almost undiagnosable from CI artifacts alone.

This PR expands the upload-artifact globs on both maestro-ios.yml and maestro-android.yml to include:

  • everything under ~/.maestro/tests/**/* (PNGs as before, plus commands.log, recordings, etc.)
  • the JUnit reports in CWD: maestro-report.xml, maestro-rerun-round-*.xml

Issue(s)

Motivated by the recurring shard 6 iOS deeplink failure on #7311.

How to test or reproduce

  1. Open this PR; the existing E2E pipeline runs both maestro-ios.yml and maestro-android.yml.
  2. Whether shards pass or fail, the iOS Maestro Logs - Shard N / Android Maestro Logs - Shard N artifacts should now contain the JUnit XML(s) and any per-flow logs in addition to the screenshots.

Screenshots

N/A — CI workflow change only.

Types of changes

  • Improvement (non-breaking change which improves a current function)

Checklist

  • I have read the CONTRIBUTING doc
  • I have signed the CLA
  • Lint and unit tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works (if applicable)
  • I have added necessary documentation (if applicable)

Summary by CodeRabbit

  • Chores
    • Enhanced test artifact collection for Android and iOS testing workflows to capture comprehensive test reports and detailed logs for improved diagnostics.

Review Change Stack

The iOS / Android Maestro workflows only uploaded *.png under
~/.maestro/tests. JUnit XML (maestro-report.xml,
maestro-rerun-round-*.xml) and Maestro's per-flow command logs were
discarded, so a CI failure surfaced only as a screenshot of the final
state, not the failing step or step trace.

Expand the upload-artifact globs on both workflows to include the
JUnit reports (in CWD) and the full ~/.maestro/tests tree.
@diegolmello diegolmello requested a deployment to approve_e2e_testing May 18, 2026 17:22 — with GitHub Actions Waiting
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 18, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8234758a-304c-4f71-bb34-a2ac94e365d6

📥 Commits

Reviewing files that changed from the base of the PR and between b2bec0e and 797b2bb.

📒 Files selected for processing (2)
  • .github/workflows/maestro-android.yml
  • .github/workflows/maestro-ios.yml
📜 Recent review details
🔇 Additional comments (2)
.github/workflows/maestro-android.yml (1)

167-170: LGTM!

.github/workflows/maestro-ios.yml (1)

108-111: LGTM!


Walkthrough

Maestro test workflows for Android and iOS are updated to collect expanded artifact sets: all files under ~/.maestro/tests/**/* plus maestro-report.xml and maestro-rerun-round-*.xml, instead of only PNG screenshots.

Changes

Maestro Artifact Collection Expansion

Layer / File(s) Summary
Maestro workflow artifact path expansion (Android & iOS)
.github/workflows/maestro-android.yml, .github/workflows/maestro-ios.yml
Artifact upload paths are expanded in both platform workflows to collect all test artifacts, XML reports, and rerun-round files instead of only PNG screenshots.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~5 minutes

Suggested labels

type: chore

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and specifically summarizes the main change: expanding CI artifact uploads to include JUnit reports and full test artifacts in Maestro workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@diegolmello diegolmello requested a deployment to official_ios_build May 18, 2026 17:26 — with GitHub Actions Waiting
@diegolmello diegolmello requested a deployment to official_android_build May 18, 2026 17:26 — with GitHub Actions Waiting
@diegolmello diegolmello requested a deployment to experimental_ios_build May 18, 2026 17:26 — with GitHub Actions Waiting
@diegolmello diegolmello requested a deployment to experimental_android_build May 18, 2026 17:26 — with GitHub Actions Waiting
@diegolmello diegolmello deleted the chore/maestro-ci-upload-junit-and-logs branch May 18, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant