Skip to content
This repository was archived by the owner on Jun 1, 2026. It is now read-only.

Feature: expand Maestro test suite from 35 to 63 flows#116

Merged
justanotheratom merged 4 commits into
mainfrom
feature/maestro-test-suite-expansion
Mar 9, 2026
Merged

Feature: expand Maestro test suite from 35 to 63 flows#116
justanotheratom merged 4 commits into
mainfrom
feature/maestro-test-suite-expansion

Conversation

@justanotheratom

Copy link
Copy Markdown
Collaborator

Summary

  • Adds 28 new Maestro E2E test flows across 6 domains, expanding coverage from 35 to 63 flows
  • Adds 4 new UITestScenario cases (productDetailFavorited, productDetailStale, recentScansEmpty, settingsGuest) with full fixture definitions
  • Adds 6 new accessibility identifiers to Swift views for test targeting
  • All 63/63 flows pass on iPhone 16 Pro simulator (iOS 18.5)

New flow coverage by domain

Domain New Flows What's Tested
Product Detail 5 Favorite toggle, unfavorite, ingredients section, ingredient alert expand, reanalyze stale
Lists 5 Favorites tap-to-detail, recent scans tap-to-detail, filter favorites, empty state, all items visible
Settings 5 Sign out confirm/cancel, delete account flow/cancel, guest reset app
Food Notes 4 Intolerances edit, avoid edit, lifestyle edit, chat button
Home 4 Content cards, stats, greeting, family avatars section
Family/Chat/Scan 5 Members visible, pending invite, predefined chat reply, chat dismiss, scan-to-detail

Test plan

  • maestro test — 63/63 flows passed in ~11 minutes
  • Xcode build succeeds (no new warnings)
  • No changes to production logic — only accessibility IDs and test harness additions

🤖 Generated with Claude Code

Add 28 new Maestro E2E flows covering product detail interactions,
lists/favorites navigation, settings danger zone actions, food notes
editing, home screen content, family management, and chat. All 63
flows pass on simulator.

- 4 new UITestScenario cases (productDetailFavorited, productDetailStale,
  recentScansEmpty, settingsGuest) with corresponding fixtures
- 4 new launch subflows for the new scenarios
- 6 new accessibility IDs across ProductDetailView, IngredientsAlertCard,
  HomeView, ManageFamilyView, and ListsTab
- 28 new test flows across product, lists, settings, food_notes, home,
  family, chat, and scan domains

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dec0960242

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +16 to +17
- tapOn:
text: Sign out

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Assert signed-out UI after confirming sign out

This flow finishes right after tapping the dialog's Sign out action, so it can pass even if the sign-out handler fails or is a no-op, because no postcondition is validated. Add a final assertion for an unauthenticated screen element (for example the sign-in sheet) so this test actually verifies that sign-out succeeded.

Useful? React with 👍 / 👎.

justanotheratom and others added 3 commits March 9, 2026 14:14
- Add dedicated accessibility IDs for sign-out confirmation dialog
  and confirm button (settings_sign_out_confirm_dialog,
  settings_sign_out_confirm_button) to eliminate ambiguity between
  the sign-out capsule button and the destructive confirmation action
- Add accessibility ID for delete-confirm text field
  (settings_delete_confirm_text_field) and tap it before typing to
  ensure the input is focused
- Add NOTE comment to delete account flow clarifying it only tests
  the confirmation dialog UI under the local auth harness, not actual
  account deletion
- Use .accessibilityElement(children: .contain) on the sign-out
  dialog so child IDs remain discoverable

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Verify sign_in_sheet appears after confirming sign-out and account
deletion, proving the actions actually triggered rather than ending
blindly after tapOn.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
12_delete_account_flow.yaml → 12_delete_account_dialog.yaml

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@justanotheratom justanotheratom merged commit e3831a1 into main Mar 9, 2026
@justanotheratom justanotheratom deleted the feature/maestro-test-suite-expansion branch March 9, 2026 09:14
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant