Repository navigation
speedrun v0.2.4
macOS arm64 and Linux x86_64, Android and iOS simulators (the iOS agent was built with Xcode 27.0).
- Android:
inputTexttypes the whole text on a slow device. Android drops a key event that waits more than 10 s. Speedrun sent the whole text in one burst, so when the app took longer than that (a busy CI emulator, an app just installed), the end of the text was lost and the step still passed. Keys now go in small chunks, each key stamped as it is sent, sized to the app's pace. Typing on a normal device is as fast as before.eraseTexthad the same problem and is fixed too. (#7) - Android: a scroll that starts on a text field scrolls. React Native's
TextInputholds on to a touch until the finger moves, then hands it back to the scroll view. Speedrun's drag sent the rest of its movement at once, too early for the scroll view to use it, soscrollUntilVisibleon a form could drag again and again without moving. The drag now waits for the scroll view to take over. (#6) - Regular expressions: a long pattern works, or fails with a clear error. A pattern too large for Speedrun's regex engine (a list of more than about a hundred alternatives) was matched as plain text, with no message:
assertVisiblefailed andassertNotVisiblepassed. Such a pattern is now split into parts that the engine can handle, and the rare one that still can't be split fails with an error naming it. Patterns can also use more than 10 groups. (#5) - Faster lookups on deep screens. Finding an element by text or id checked each element of the screen several times. It now checks each one once.
Thanks to @dextorer for #5 and #7, @elyonz for #6, and @daentech for the analysis and patch in #7. Each issue came with a precise diagnosis and a repro.
To update: speedrun update, or brew upgrade speedrun if you installed with Homebrew.