Skip to content

speedrun v0.2.7

Choose a tag to compare

@github-actions github-actions released this 30 Oct 21:41
· 49 commits to main since this release

macOS arm64 and Linux x86_64, Android and iOS simulators (the iOS agent was built with Xcode 27.0).

  • A failed flow's debug output explains what happened. Next to commands.json and the screenshot, a failed flow's folder now has logs/debug.log. It holds the end of what SPEEDRUN_DEBUG=1 prints, without having to rerun with it:

    • each command's start and end;
    • where each tap landed and which elements were there;
    • how the screen settled;
    • the screen's texts each time they changed.

    A failure that comes once in many runs can be read from the zip of that folder. Lines carry the local time, as the iOS agent's log does.

  • iOS: the agent's log in the debug output covers more time. XCTest logs a line for every read of the screen, about 20 a second while a step waits. So the last 400 lines of logs/ios-agent.log covered only the last 22 s. Runs of those lines are now written as one line with a count, and the log covers the whole failing step.

  • iOS: reads of the app without any text are looked into. v0.2.6 logged a read of the app with no elements under it. On the CI run it was made for, the app did have elements, just none with any text, so nothing was logged. The check now fires on a read with no text, label or id anywhere. Once that has lasted 2 s, Speedrun reads the app again through a fresh connection and continues with it if it has text. Every 5 s, the agent's log gets a speedrun: empty read of … line describing:

    • what the app holds;
    • what a touch would reach at four points of the screen;
    • which apps XCTest sees.

    Launch screens and transitions end before the 2 s and are left alone.

To update: speedrun update, or brew upgrade speedrun if you installed with Homebrew.