ift-ts:qa:status:2026q3-status-qa-mobile
Description
Continue building mobile test automation for the Status app, with three priorities for Q3:
- make the per-PR gate a trustworthy signal again,
- close the wallet-send and keycard coverage gaps where users risk funds and keys,
- and move backend correctness (delivery, sync, sends) down to status-go functional tests so the mobile suite holds what only a real device proves.
The performance work is a priority as there is an intention to use performance metrics as part of the gate for future releases.
Task List
Performance and resource monitoring
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:performance - owner: magnus
- status: in progress (40%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Make the mobile performance pipeline run unattended and extend it from response times to resource usage. The response-time dashboard already covers around 39 app surfaces on a fresh account; the priority this quarter is measuring a loaded account, getting the nightly run reliable, and adding battery, CPU, and memory tracking.
Deliverables
- Loaded-account measurement column published to the status-app-benchmarks dashboard
- Unattended nightly run with failure alerting, proven over consecutive nights
- Battery, CPU, and memory findings linked to status-im/status-app#21045
- Second test device (Moto G55) added to the runs
- Tracks status-im/status-app#21086
Gate-health stabilisation
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:gate-health - owner: magnus
- status: in progress (15%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Restore the Android per-PR gate as a trustworthy signal. Re-triage expected-fail tests and rebalance the gate into a stable set covering onboarding, messaging, wallet, and settings journeys.
Deliverables
- Expected-fail messaging tests re-triaged and re-enabled or refiled
- A rebalanced gate marker covering onboarding, messaging, wallet, and settings journeys
prs-androidjob passing reliably on the rebalanced set
Accessibility testability contract
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:a11y-contract - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Add accessibility properties (objectName / Accessible.name) on screens the tests currently cannot read, improving assertions and reducing brittle locators.
Deliverables
- An agreed
objectName/Accessible.nameconvention, lint-checked warn-only on touched files - The reply, pin, and members
objectNames added - Disabled chat-title, message-text, and synced-name checks converted to assertions as properties land
Mobile binding contract test
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:binding-contract - owner: magnus
- status: in progress (10%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Add a fast Go test that checks every backend method the mobile app calls is still exposed by status-go, so renamed or removed methods fail in CI instead of surfacing only on device.
Deliverables
- A method-existence test in status-go’s
mobilepackage covering thewakuextnamespace, running in CI - The app’s referenced method names enumerated from source
- Coverage extended to the
walletandaccountsnamespaces
Backend-peer messaging gate
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:backend-peer-gate - owner: magnus
- status: in progress (15%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Replace flaky two-phone messaging checks with a headless status-backend acting as the second participant, while retaining the on-phone smoke as a backup.
Deliverables
- A headless status-backend second-participant harness
- 1:1 delivery and receipt asserted through the backend peer in CI without a device pair
- Transport decided for Pi/emulator and BrowserStack paths
- The on-phone delivery smoke retained as a backup pending a production-network check
Wallet-send and community smokes
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:journey-smokes - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Add smoke tests for critical journeys missing from the gate: wallet send and joining a community. Both join the gate once gate-health has stabilised it.
Deliverables
- A wallet-send smoke asserting recipient and amount through to signing, with a
send_modalpage object - A community browse-and-join smoke, with community page objects
Keycard UI coverage
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:keycard-ui - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Cover the new keycard on-screen flows on mobile: PIN entry, PUK unblock, onboarding, and recovery. Dev may provide a keycard test mock that makes these flows automatable without a physical card.
Deliverables
- Keycard page objects and locators against the new screens
- Automated PIN, onboarding, and recovery flows once the mock is reachable in the mobile build
- Tracks status-im/status-app#20305 and status-im/status-app#20289
Communities groundwork
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:test-communities - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Land community page objects and establish mobile-feasible test coverage. Community creation is desktop-only, so test environment setup will be investigated using the backend API directly.
Deliverables
- Investigation of backend API for community creation and test environment setup
- Community overview, channels, categories, and permissions page objects merged
- Browse and join community flow test on mobile
- Channel interaction test within a joined community
- Documented remaining gaps for permissions and categories
Device sync onboarding
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:test-device-sync - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Implement mobile login-via-sync-code test coverage. Sync code generation is desktop-only through the UI, so the backend API will be investigated for generating sync codes directly.
Deliverables
- Investigation of backend API for sync code generation
SyncCodeInputPagepage object forLoginBySyncingPageSyncProgressPagepage object for sync progress, success, and failure statestest_mobile_sync_login.pyvalidating code entry, sync completion, and profile data sync- 5 assertions matching desktop critical parity
Quick wins
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:quick-wins - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Close small assertion gaps that require minimal new infrastructure.
Deliverables
- Post-login user identity check in password change test
- Post-login user identity check in backup recovery test
- Backup seed banner visibility state validation
iOS coverage expansion
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:ios-expansion - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Get a working iOS test build into the automation so iOS coverage can be expanded later. The framework already supports iOS with one onboarding smoke, based on the Q1 feasibility work in status-im/status-app#20049.
Deliverables
- A working iOS test build available to the Appium framework (TestFlight or BrowserStack)
- An assessment of the iOS CI job
- iOS coverage roadmap for follow-up work
Maintenance
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:maintenance - owner: magnus
- status: in progress (50%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Keep the framework healthy as the app changes: triage flaky tests, follow app refactors, continue locator migration, and continue rolling out test-traceability markers.
Deliverables
- Brittle xpath locators reduced in messaging and wallet locator files, toward
tid()/objectName - Test-traceability markers extended beyond messaging suites to wallet and onboarding tests
- PRs / Issues / Reports
Release testing
- fully qualified name:
ift-ts:qa:status:2026q3-status-qa-mobile:release-testing - owner: magnus
- status: not started
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
Support release testing for the 2.39 and 2.40 mobile builds: exploratory testing, regression execution, and reporting issues found.
Deliverables
- Critical-path sign-off for the 2.39 and 2.40 mobile releases
- Bugs and follow-up issues filed during release testing