阅读更多
Windows
Win32 API (pywinauto, autoit)
MS Accessbility (?)
UI Automation (eft, white)
In CLR object model (Sharprobo)
WEB
In browser DOM, Using frame (Selenium)
In browser DOM, Using proxy (Sahi)
Out browser DOM, Using specific browser pluggin (Watir)
Java
In JVM object model/java.awt.Robot (abbot)
Java Access Bridge (?)
Flash
In Flash VM object model, Using loader (fluorida)
There are a LOT of frameworks to deal with different GUI APIs. They producing similar tools to describe a common concept - UI Automation. The process to auotmate a UI is actually qutite easy:
1. Locate, find a control in the gui by a locator (ID, Criteria, XPath, Css Selector...)
2. Action, simulate a user interaction (Type, click...)
The driver to drive the UI automation process should and have to be different from API to API. But the concept/language/tool/editor behind should be unified to save investment, and help smooth learning curve.