The application is slower than expected

A two-second pause does not establish that a dialog has loaded. Network delays, larger reports and busy machines can all change response time.

Wait for a relevant window or visible state, then use a timeout so an absent result does not leave the workflow waiting forever. Keep small pauses only where the application genuinely needs them.

The target or focus has changed

A fixed screen coordinate can point at the wrong control after a window moves. Typing can go to the wrong field when focus changes.

Target the intended window and establish field focus immediately before input. Image or text matching can locate a recognisable target, provided it stays within the configured search area.

The visual evidence is ambiguous

Similar icons can produce a wrong match. Small or low-contrast text can produce an incorrect OCR value. Display scaling and theme changes can alter both.

Use distinctive templates, focused regions and representative test screens. Check missing or unexpected reads before acting on them. A lower confidence threshold is not automatically a better setting.

Only the successful path was designed

A warning, a confirmation dialog or a request that partly completed can leave the workflow in a different state. Retrying without checking can duplicate the work.

Define success, known failure and timeout outcomes. Test each path, bound retries, and verify the actual result before processing the next item.