Sikuli is a visual technology to automate graphical user interface (GUI) using images (screenshots).
It automates everything you see on the screen without using the internal API.
You can programmatically manipulate the web page, Windows / Linux / MacOS X applications, Web applications, or even the iPhone, Andriod applications loaded into the emulator. So, Sikuli can automate almost everything!
Pros:
Cons: