Software for automating Windows GUI applications [closed]

I am looking for software that will allow me to automate some GUI tasks, including clicking on buttons and sending keystrokes to a GUI application running in the foreground.

Are there any recommendations?

Requirements:

  • Scriptable - I need the ability to make decisions at runtime - ie branch if window title contains some specific text.

Preferences:

  • Robust button clicking - NOT "position the mouse relative to the window and send a click", but rather look for the button object by some internal id, then send a click event directly to the object internally or just position the mouse in the middle of the button by asking the button where it is on the screen.
  • Aware of GUI events - eg it will tell me in some way if a window pops up

AutoHotKey

Autoit

PyWinAuto


I'm about 5 years late to the OP but here are my suggestions:

  • Testing Anywhere
  • TestPlant

I've trialed both. I'm leaning toward Testing Anywhere at the moment. It fits the OP's original requirements well enough. Both are $$$ and clearly designed for large enterprise organizations with the dough to throw at problems.

That said, none of the testing apps I've tried (including the above) are outstanding and have their own quirks to deal with. But maybe I should admit that I'm expecting miracles.

I'm surprised at the relative silence to this question...especially being 5 years old! When it comes to GUI automation in particular, I acknowledge that we all love to hate on Windows and its uncooperativeness in this regard. Surely, the tech has improved for this purpose over this time. The cynical IT guy in me isn't surprised at all. My inner child is hopeful though...