Sikuli

Sikuli is a scripting environment to script actions on the screen using other programs' graphical interfaces. It lets you write in scripting languages such as Python, Ruby, or JavaScript with graphical pictures of things such as buttons inserted directly into the script, with the Sikuli environment matching these with the things on the screen so you can tell the script to push a button (for instance) at a particular point.

Links

 * Official site