Releases: lukluca/apple-monkey-tester
Release list
v0.1.0
First public release.
What it does: MonkeyTester generates a pseudo-random, seeded stream of taps, double-taps, long-presses, and swipes against a running XCUIApplication's currently hittable elements, falling back to a random on-screen coordinate when none is available. Works via the standard XCUITest accessibility tree, so it targets any iOS/iPadOS/macOS app — Flutter, UIKit, SwiftUI, AppKit — not just one framework.
Verified end-to-end: Demo/ is a small two-page app (a safe page, and a page with a button that deliberately does an out-of-bounds array access) with a UI test that runs MonkeyTester against it. The monkey found and hit the crash button within 500 random events, confirmed via xcodebuild test.
Why: replaces two abandoned options (CrashMonkey, dead since Xcode removed UIAutomation; SwiftMonkey, unmaintained since Dec 2022) with a small tool built directly on Apple's current, stable XCUITest API.