Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Maestro Deep Dive: Testing a SwiftUI App End to End

Description and use

Maestro CLI enables end‑to‑end testing of a small SwiftUI app, covering login, task operations, and logout, with report generation.

Problem

Automate end‑to‑end testing of a small SwiftUI app with login and to‑do list screens.

Outcome

Maestro CLI 2.10.0 successfully executed end‑to‑end tests for the TodoDemo app, handling login, system permission dialog, task operations, and logout, producing detailed reports.

Workflow

  • Create Xcode project TodoDemo with SwiftUI
  • Add accessibility identifiers to emailField, passwordField, loginButton, loginError
  • Implement login logic with demo credentials
  • Add TodoListView with add, complete, delete, progress, logout
  • Write Maestro YAML test with reusable sub‑flows, env vars, conditional logic, JS, tags
  • Run tests locally with Maestro CLI
  • Inspect generated reports and debug failures
  • Compare test syntax with XCUITest

Evidence

The app has two screens: Login and My Tasks

Source

Everything here uses the free, open-source Maestro CLI

Source

The valid credentials are [email protected] / password123

Source

  • Record date: 2026-10-27T20:11:12.799Z