82 lines
2.6 KiB
Markdown
82 lines
2.6 KiB
Markdown
# Maestro Integration Tests — Client App
|
|
|
|
Auth flows and E2E happy paths for the KROW Client app.
|
|
See [docs/research/flutter-testing-tools.md](/docs/research/flutter-testing-tools.md), [maestro-test-run-instructions.md](/docs/research/maestro-test-run-instructions.md), and [docs/testing/maestro-e2e-happy-paths.md](/docs/testing/maestro-e2e-happy-paths.md) (#572).
|
|
|
|
## Structure
|
|
|
|
```
|
|
maestro/
|
|
auth/
|
|
sign_in.yaml
|
|
sign_up.yaml
|
|
sign_out.yaml
|
|
sign_in_invalid_password.yaml
|
|
navigation/
|
|
home.yaml
|
|
orders.yaml
|
|
billing.yaml
|
|
coverage.yaml
|
|
reports.yaml
|
|
orders/
|
|
view_orders.yaml
|
|
completed_no_edit_icon.yaml # #492
|
|
create_order_entry.yaml
|
|
create_order_rapid.yaml
|
|
rapid_to_one_time_draft_submit_e2e.yaml
|
|
create_order_one_time_e2e.yaml
|
|
edit_active_order_e2e.yaml
|
|
edit_active_order_verify_updated_e2e.yaml
|
|
hubs/
|
|
create_hub_e2e.yaml
|
|
manage_hubs_from_settings.yaml
|
|
edit_hub_e2e.yaml
|
|
delete_hub_e2e.yaml
|
|
billing/
|
|
billing_overview.yaml
|
|
invoice_details_smoke.yaml
|
|
invoice_approval_e2e.yaml
|
|
reports/
|
|
reports_dashboard.yaml
|
|
spend_report_export_smoke.yaml
|
|
home/
|
|
home_dashboard_widgets.yaml
|
|
tab_bar_roundtrip.yaml
|
|
settings/
|
|
settings_page.yaml
|
|
edit_profile.yaml
|
|
edit_profile_save_e2e.yaml
|
|
logout_flow.yaml
|
|
```
|
|
|
|
## Credentials (env, never hardcoded)
|
|
|
|
| Flow | Env variables |
|
|
|------|---------------|
|
|
| sign_in | `TEST_CLIENT_EMAIL`, `TEST_CLIENT_PASSWORD` |
|
|
| sign_up | `TEST_CLIENT_EMAIL`, `TEST_CLIENT_PASSWORD`, `TEST_CLIENT_COMPANY` |
|
|
|
|
**Sign-in:** testclient@gmail.com / testclient!
|
|
|
|
## Run
|
|
|
|
```bash
|
|
# Via Makefile (export vars first)
|
|
make test-e2e-client # Auth only
|
|
make test-e2e-client-extended # Auth + nav + orders + settings
|
|
make test-e2e-client-happy-path # Auth + hubs + create order E2E + billing + reports + logout (#572)
|
|
make test-e2e-client-smoke # Deterministic smoke suite
|
|
make test-e2e-client-hubs-e2e # Hubs manage + edit + delete
|
|
make test-e2e-client-billing-smoke # Billing overview + invoice details/empty state
|
|
make test-e2e-client-reports-smoke # Reports dashboard + export placeholder
|
|
make test-e2e-client-settings-e2e # Settings + edit profile save + logout
|
|
make test-e2e-client-orders-smoke # Orders smoke (RAPID → One-Time draft)
|
|
make test-e2e-client-orders-data # Orders data-dependent (edit active order)
|
|
|
|
# Direct
|
|
maestro test apps/mobile/apps/client/maestro/auth/sign_in.yaml \
|
|
-e TEST_CLIENT_EMAIL=... -e TEST_CLIENT_PASSWORD=...
|
|
maestro test apps/mobile/apps/client/maestro/auth/sign_up.yaml \
|
|
-e TEST_CLIENT_EMAIL=... -e TEST_CLIENT_PASSWORD=... -e TEST_CLIENT_COMPANY=...
|
|
```
|