SAP GUI recorder: walk through the process, get a test that runs
You work in SAP GUI for Windows as usual; the recorder turns each gesture into a SapEccLibrary keyword. By default it listens to the events of the SAP GUI Scripting API, which also captures buttons, grids and trees, and falls back to reading the screen when the server forbids recording.
In semantic mode, a field is designated by its visible label (Fill Field By Label Table Name T000) rather than by its technical id, and only if that label really designates the same element: otherwise the id stays. The file produced is a complete suite that runs as is with robot.
Proof: filmed for real on October 4, 2026 on ABAP Platform 1909, up to the replay of the exports by Robot Framework; the defects found while filming were fixed the same day.
> python tools/recorder/sapgui_recorder.py --record --engine native --semantic --export-resources # other exports: --export-spec --export-istqb --export-report > python tools/recorder/sapgui_recorder.py --replay process.robot # recorder.cmd opens the graphical launcher
What it does
- Records through the API events (native engine) or by reading the screen, by choice or automatically
- Adds assertions while recording: Ctrl+Alt+A for the value of the active field, Ctrl+Alt+V for the visual fingerprint of the screen
- Replays a recording against the open SAP GUI session and stops at the first failing step
- Converts a VBS script from the recorder built into SAP GUI (Alt+F12), without an SAP session
- Graphical launcher: mode, exports, a step panel to reorder, edit or delete
What you get
- A complete, replayable
.robotsuite - A « resource and suite » pair: business keywords on one side, a test without raw ids on the other
- A plan in the
specs/format, the entry point of the agents - An ISTQB test plan and test cases, with a replay block
- An HTML documentation report, screenshots included
Its limits
- SAP GUI for Windows only
- A recording is a draft: review it before turning it into a test
- Reading the screen follows a human pace; a process played by a script is recorded with the native engine



