Files
Kordant/tasks/ios-production/17-ui-test-expansion.md
2026-05-26 16:06:34 -04:00

2.8 KiB

17. UI Test Suite Expansion

meta: id: ios-production-17 feature: ios-production priority: P1 depends_on: [] tags: [testing, ui-tests, quality]

objective:

  • Expand UI test coverage to include all critical user journeys across the iOS app

deliverables:

  • UI tests for auth flows
  • UI tests for dashboard and services
  • UI tests for settings
  • Accessibility testing integration

steps:

  1. Audit existing UI tests:
    • Review iOS/KordantUITests/KordantUITests.swift
    • Identify gaps in coverage
    • Plan test scenarios
  2. Create auth flow tests:
    • Launch app → onboarding screen visible
    • Sign up with valid credentials → dashboard
    • Login with valid credentials → dashboard
    • Login with invalid credentials → error shown
    • Forgot password flow → confirmation shown
    • Biometric prompt → enable/skip options
  3. Create dashboard tests:
    • Dashboard loads with widgets
    • Pull to refresh updates data
    • Tap alert → detail view opens
    • Threat score updates correctly
  4. Create service tests:
    • Navigate to DarkWatch → watchlist loads
    • Add watchlist item → appears in list
    • Navigate to VoicePrint → enrollment screen
    • Navigate to SpamShield → rules list
    • Navigate to HomeTitle → property list
    • Navigate to RemoveBrokers → listings shown
  5. Create settings tests:
    • Open settings → all options visible
    • Toggle notifications → preference updated
    • Update profile → changes saved
    • Logout → returns to login screen
  6. Add accessibility tests:
    • Verify VoiceOver labels on all elements
    • Test dynamic type support
    • Test color contrast
  7. Configure test data:
    • Mock API responses for consistent tests
    • Reset app state between tests
    • Use test account credentials
  8. Add CI integration:
    • Run UI tests on pull requests
    • Test on multiple simulators (iPhone SE, 14, 15 Pro Max)
    • Upload test results and screenshots

tests:

  • UI: All critical paths covered
  • Accessibility: VoiceOver tests passing
  • CI: Tests run automatically on PR

acceptance_criteria:

  • 20+ UI test cases covering critical flows
  • Auth flow fully tested (signup, login, forgot password)
  • All 5 services have UI tests
  • Settings and profile tested
  • Tests run on iPhone SE, 14, and 15 Pro Max simulators
  • Tests complete in <5 minutes
  • Screenshots captured on failure
  • Accessibility labels verified
  • Mock API used for consistent test data
  • CI runs UI tests on every PR

validation:

  • Run UI tests → all pass
  • Introduce UI bug → test fails
  • Check test report → screenshots for all tests
  • CI pipeline → UI tests green

notes:

  • Use XCTest framework for UI tests
  • Mock network layer for consistent, fast tests
  • Tests should be independent (no shared state)
  • Consider using Accessibility IDs for reliable element finding