Lesson 1Settings and personalisation scenarios: language, dark mode, notification preferencesCovers how users configure language, theme, and notification options. You will design scenarios for first-run setup, preference changes, persistence across sessions, and verifying that UI, content, and alerts respect personalised settings in everyday use.
First-run settings and default valuesLanguage change and content localisationDark mode, light mode, and system themeNotification opt-in, opt-out, and categoriesPersistence of preferences across sessionsLesson 2Map and location scenarios: real-time location, permission handling, geofencingDetails scenarios around maps, GPS, and geofencing. You will test permission flows, accuracy, degraded signals, mock locations, map rendering, route snapping, and geofence triggers for stops, stations, and ticket validation zones to ensure precision.
Location permission request and denialGPS accuracy, drift, and no-fix behaviourMap rendering, zoom, and marker updatesMock locations and fraud detection checksGeofence entry, exit, and dwell eventsLesson 3Route search scenarios: multi-modal search, filters, no-results handlingFocuses on searching for routes and journeys. You will test multi-modal options, filters, sorting, edge cases like no results, invalid inputs, and ensuring that search results align with map data, schedules, and pricing rules for user satisfaction.
Origin, destination, and time inputsMulti-modal route combinations and rankingFilters for price, time, and transfersNo-results, errors, and fallback optionsConsistency with map and schedule dataLesson 4Device state scenarios: low battery, backgrounding, rotationExplores how CityMove behaves under varying device states. You will design tests for low battery, power saving, rotation, backgrounding, killing and relaunching the app, ensuring sessions, routes, and tickets remain consistent and usable without disruption.
Low battery and power saving mode impactApp background, resume, and state restoreForce close, reboot, and cold start flowsScreen rotation and layout responsivenessInteraction with system dialogs and alertsLesson 5Auth and account management scenarios: email/password, Google SSO, session expiryCovers authentication and account lifecycle flows. You will test email and password login, Google SSO, sign-up, password reset, session expiry, device changes, and security controls such as lockouts and suspicious activity handling for secure access.
Email sign-up, login, and logout flowsGoogle SSO login, linking, and unlinkingPassword reset and credential recoverySession timeout and token refresh logicAccount lockout and suspicious activityLesson 6Payment and security scenarios: tokenisation, failed payments, retriesExamines payment flows and security protections. You will test tokenisation, 3-D Secure, failed payments, retries, partial approvals, and secure storage, ensuring compliance with PCI guidelines and clear user-facing error handling for trustworthy transactions.
Card tokenisation and secure storage3-D Secure and strong auth challengesHandling declines, errors, and retriesPartial payments, holds, and reversalsFraud checks and PCI compliance risksLesson 7Push notifications scenarios: subscription, delivery, handling when app closedFocuses on validating push notification flows from subscription to delivery. You will test permission prompts, topic subscriptions, payload formats, deep links, and behaviour when the app is foregrounded, backgrounded, or fully closed for timely alerts.
OS permission prompts and rationale screensTopic and segment subscription logicNotification payload format and localisationHandling in foreground, background, and closedDeep links and navigation from notificationsLesson 8Digital ticket lifecycle scenarios: purchase flow, storage, validation, refundsDescribes the full lifecycle of digital tickets. You will design scenarios for purchase, storage, activation, validation, expiry, refunds, and chargebacks, including offline validation and fraud or duplicate use detection for smooth ticketing.
Ticket purchase and confirmation screensTicket storage, backup, and restoreActivation timing and countdown rulesOn-device and offline ticket validationExpiry, refunds, and chargeback flowsLesson 9Cross-platform and data sync scenarios: state consistency between Android and iOSEnsures consistent data and behaviour across Android and iOS. You will design scenarios for cross-device login, state sync, push settings, favourites, tickets, and handling version mismatches or partial feature availability for unified experience.
Cross-device login and profile consistencySync of favourites, history, and settingsTicket and pass availability on both OSesPush notification parity across platformsHandling version and feature mismatchesLesson 10Network and connectivity scenarios: offline, intermittent connectivity, slow networksAddresses behaviour under offline, slow, and unstable networks. You will design scenarios for caching, retries, graceful degradation, user messaging, and recovery once connectivity improves, across both cellular and Wi-Fi networks for resilient performance.
Offline mode behaviour and cached dataIntermittent connectivity and auto-retrySlow network, timeouts, and spinnersSwitching between Wi-Fi and cellular dataUser messaging and recovery workflows