UI Automation is the process of testing a product with the help of Automated Test Scripts.UI Automation is a collection of related technologies and APIs that together form the new programmatic accessibility story for the Windows platform.
Why UIAutomation not IAcessible InterfaceIAccessible is a “chatty” interface each method returns just a single piece of information about the underlying element. To get the name, role and state from say four objects, twelve separate calls are needed (in addition to the calls required to navigate to those objects).
While IAccessible can be used cross-process (using DCOM), this can be prohibitively slow for some applications. Crossing a process boundary is expensive, regardless of the transport used (DCOM is not particularly efficient here anyhow), but this is compounded by the chatty nature of the interface.
This makes cross-process use of IAccessible feasible for only a few specific types of applications; those that require only a few properties from a few elements, or those that have low performance requirements. (Some automated testing applications may fall into this category.)