A Swift library that turns standard UI tests into high-quality App Store Previews and marketing videos. It extends XCTest to make interactions look human and animations look cinematic.
- Human Interactions: Performs taps and typing with natural delays.
- Smooth Scrolling: Replaces jerky swipes with slow, fluid scrolling.
- Director Mode: Organizes tests into "Scenes" for better pacing and readability.
- Smart Pauses: Built-in "reading time" so viewers can actually digest what's on screen.
Initialize the production at the start and finalize it at the end to generate the report.
AutoVidDirector.startProduction(app: app)
// ... your actions ...
AutoVidDirector.wrapProduction()Break your flow into logical scenes for the video.
AutoVidDirector.scene("Onboarding") {
app.textFields["Email"].humanType("hello@autovid.com")
app.buttons["Next"].humanTap()
}Swap standard XCTest methods for cinematic ones:
.tap()➡️.humanTap().typeText()➡️.humanType("Hello").swipeUp()➡️.slowSwipeUp(duration: 2.0)AutoVidDirector.waitToRead(seconds: 2.0)(Give viewers time to read)
Once the test finishes, all frames and screenshots are collected:
- Simulator: The output folder opens automatically in Finder.
- Real Device: Saved within the Xcode Test Report (Attachments).
Please see AutoVid companion macoOS app.
Please see AutoVidMockApp iOS app for example usage.
Add via Swift Package Manager:
https://github.com/stevenselcuk/AutoVidSDK.git