Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Maestro reporting for e2e tests #2713

Merged
merged 11 commits into from
May 9, 2024
Merged

Conversation

loremattei
Copy link
Contributor

@loremattei loremattei commented Apr 11, 2024

Task/Issue URL: https://app.asana.com/0/414709148257752/1207008449808441/f
Tech Design URL:
CC:

Description:
Maestro Cloud Action has an issue where timeouts are reported as success.
At the same time, Maestro Cloud CI seems to have an issue where it gets in a weird state when test flows fail because of a timeout: every subsequent uploads/retries is stuck and ends up with a timeout.
The combination of the two issues makes retries show always as a pass in GH, even if they still fail or not run at all.

Maestro CLI seems to be more reliable and reports the state of the CI correctly. Moreover, it seems to be able to correctly cancel tests that timeout.

This PR replaces Maestro Cloud Action with the CLI.

Steps to test this PR:

  1. Ensure e2e tests from this branch are green (see https://github.com/duckduckgo/iOS/actions/runs/8803029418 for a run from this branch)
  2. Validate that when a failed test is re-run, it still fails. This branch is built on top of the one in this PR and adds a commit that breaks the test. See here for consecutive runs that keep failing.

Copy Testing:

  • Use of correct apostrophes in new copy, ie rather than '

Orientation Testing:

  • Portrait
  • Landscape

Device Testing:

  • iPhone SE (1st Gen)
  • iPhone 8
  • iPhone X
  • iPhone 14 Pro
  • iPad

OS Testing:

  • iOS 14
  • iOS 15
  • iOS 16

Theme Testing:

  • Light theme
  • Dark theme

Internal references:

Software Engineering Expectations
Technical Design Template

@loremattei loremattei marked this pull request as ready for review April 24, 2024 21:48
@github-actions github-actions bot added the bot: not in app board Added by automation for pull requests with tasks not added to iOS App Board Asana project label Apr 24, 2024
@loremattei loremattei removed the bot: not in app board Added by automation for pull requests with tasks not added to iOS App Board Asana project label Apr 24, 2024
Copy link
Collaborator

@bwaresiak bwaresiak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! One question: looking at Sync e2e I see some tests timing out and still be reported as successful: https://github.com/duckduckgo/iOS/actions/runs/8843360123/job/24284991292 is this expected?

@loremattei
Copy link
Contributor Author

@bwaresiak it's definitely not! But on that one we also have to fix the underlying issue with the test, so I'm planning to open a dedicated PR to address all the sync test related issues.

Copy link

github-actions bot commented May 7, 2024

This PR has been inactive for more than 7 days and will be automatically closed 7 days from now.

@github-actions github-actions bot added the stale label May 7, 2024
@loremattei loremattei merged commit 8bbc05e into main May 9, 2024
14 checks passed
@loremattei loremattei deleted the loremattei/fix-maestro-reporting branch May 9, 2024 08:23
samsymons added a commit that referenced this pull request May 9, 2024
* main:
  Upload logs on cancel (#2836)
  Add bookmarks to top hits suggestions on iOS (#2835)
  Fix Maestro reporting for e2e tests (#2713)
  support marketplace kit (#2833)
  Enable attribution flag (#2825)
  Release 7.119.0-0 (#2831)
  Fix subscriptions glitch in Settings (#2828)
  Delegate SecureVault KeyStore Events in All Scenarios  (#2827)
  Clears subscription cache on restore (#2823)
samsymons added a commit that referenced this pull request May 10, 2024
# By amddg44 (3) and others
# Via GitHub (1) and amddg44 (1)
* main:
  Enable gzip compression for Sync PATCH payloads (#2805)
  sync error notify (#2822)
  Wire up VPN error UI (#2826)
  Mergeback from release/7.119.0
  Release 7.119.0-1 (#2840)
  Add temporary survey to Passwords screen (#2834)
  Upload logs on cancel (#2836)
  Add bookmarks to top hits suggestions on iOS (#2835)
  Fix Maestro reporting for e2e tests (#2713)
  support marketplace kit (#2833)
  Enable attribution flag (#2825)
  Release 7.119.0-0 (#2831)
  Fix subscriptions glitch in Settings (#2828)
  Delegate SecureVault KeyStore Events in All Scenarios  (#2827)
  Clears subscription cache on restore (#2823)

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
samsymons added a commit that referenced this pull request May 13, 2024
* main: (27 commits)
  Release 7.120.0-0 (#2846)
  Enable gzip compression for Sync PATCH payloads (#2805)
  sync error notify (#2822)
  Wire up VPN error UI (#2826)
  Mergeback from release/7.119.0
  Release 7.119.0-1 (#2840)
  Add temporary survey to Passwords screen (#2834)
  Upload logs on cancel (#2836)
  Add bookmarks to top hits suggestions on iOS (#2835)
  Fix Maestro reporting for e2e tests (#2713)
  support marketplace kit (#2833)
  Enable attribution flag (#2825)
  Release 7.119.0-0 (#2831)
  Fix subscriptions glitch in Settings (#2828)
  Delegate SecureVault KeyStore Events in All Scenarios  (#2827)
  Clears subscription cache on restore (#2823)
  Enable field validation for Sync payloads (#2807)
  Fix up address bar spoofing tests to match new behaviours. (#2743)
  Release 7.118.0-4 (#2821)
  Settings: onAppear changed to onDisappear (#2817) (#2820)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants