Techniques and tools are described for recording input from user actions
in a user interface (UI) and replicating the UI activity on a computing
device. When recording and replicating UI activity, these techniques and
tools improve the readability of the recorded input data and the
reliability of playback. The techniques and tools may be used in
combination or separately. For example, a recording tool uses a set of
filters, which aggregates recorded data into basic, readable primitive
methods. The recording tool converts the aggregated data into playback
code by converting the playback primitive methods into corresponding
computer language instructions. A playback tool may then replicate the
initial recorded UI activity by playing back the computer language
instructions.