This guide outlines the typical performance characteristics of each TestDriver command based on observed average execution times. These measurements can help guide optimization, identify bottlenecks, and set realistic expectations when designing automated tests.

Fastest Commands

These commands execute quickly and can be relied upon for high-frequency usage in complex test sequences.

CommandAvg DurationNotes
exec0.28sFastest command — used for running system-level operations or internal scripting logic.
wait-for-image2.21sRelatively fast if the image is readily present; can be slower if the UI takes time to render.
remember2.80sInternal memory operation — used for tracking previous outputs or locations.
hover-text3.11sEfficient for UI elements with immediate accessibility.
scroll3.34sSmooth and fast in most scrollable containers.
assert3.47sUsed for validation — usually lightweight unless image or text detection is delayed.

Medium Performance Commands

These are reliable but may involve minor delays due to image processing, UI rendering, or input simulation.

CommandAvg DurationNotes
focus-application4.83sIncludes system-level context switching — may vary by OS and app state.
scroll-until-text5.94sSlightly slower due to iterative scroll and search logic.
click6.15sIncludes visual target matching and precise cursor control.
press-keys6.18sSlightly slower if key sequences involve modifier keys or application delays.
type7.32sSimulates real typing — intentionally throttled for realism and stability.
wait7.50sDirect sleep used for explicit pauses. Use sparingly for faster tests.

Slower Commands

These commands tend to be slower due to intensive image comparison, polling loops, or delays in dynamic content rendering.

CommandAvg DurationNotes
hover-image11.95sRequires locating a target image — performance depends on image quality and rendering time.
wait-for-text12.08sPolls repeatedly for expected text — delay depends on application speed and visibility.
match-image16.55sMost time-consuming operation — relies on pixel-level image detection which may be affected by resolution, anti-aliasing, and scaling.

  • Avoid overusing match-image unless strictly necessary. Prefer wait-for-text or hover-text when working with text-based UIs.
  • Use remember and assert early in the test to catch failures before expensive commands.
  • Favor exec for background operations like launching processes or setting up test conditions.
  • Use wait intentionally and sparingly — prefer dynamic waits (wait-for-image, wait-for-text) when possible.
  • Monitor cumulative test time. Replacing slower commands can dramatically improve test suite duration.