Falafel.com 上有个视频介绍如何利用 TestComplete 的 MSAA 支持简化 UI 自动化测试,例如视频中所演示的 Windows 添加移除程序的测试:
TestComplete support for MSAA can ease UI automation
In this video we take a look at leveraging TestComplete’s support for MSAA to help testing a UI that’s familiar to all Windows users, the Add Remove Programs window. MSAA support can be useful against applications that make use of owner drawn controls which is how most grid controls work.
Microsoft Active Accessibility (MSAA) is a technology that lets the applications provide information about its user interface to other technologies, such as screen readers. Information about the application’s UI elements is exposed via the special IAccessible interface. This interface provides information about the type of the underlying control, its name, location and current state, and provides methods for manipulating that control. In this way, Active Accessibility can also be used in functional (or user interface) testing.
TestComplete includes the MSAA Open Applications plug-in that provides extended support for applications that contain accessibility information. This plug-in makes TestComplete an accessibility client, that is, TestComplete uses properties and methods of the IAccessible
interface to obtain information about windows and controls in the tested application.
You can use the TestComplete’s support for Active Accessibility for the following purposes:
·
Expose information about custom controls in applications . Many applications use custom or owner-drawn controls, which do not behave like standard Windows controls, and thus TestComplete’s may not recognize them. Examples of such applications are those created with Adobe Flash, Microsoft FoxPro, Sybase PowerBuilder and other development tools. However, development tools can automatically include accessibility information in applications, and it is also possible to manually implement IAccessible
in an application. This way, interaction with applications’ windows and controls are possible with the TestComplete’s MSAA engine.
· Test applications for accessibility . For example, you could test whether the object have correct accessible names and roles specified, whether the controls’ default action executes correctly, and so on.
关于 MSAA 的介绍:
http://en.wikipedia.org/wiki/Microsoft_Active_Accessibility
Microsoft Active Accessibility (MSAA ) is an Application Programming Interface (API) for user interface accessibility. MSAA was introduced as a platform add-on to Microsoft Windows 95 in 1997. MSAA is designed to help Assistive Technology (AT) products interact with standard and custom user interface (UI) elements of an application (or the operating system), as well as to access, identify, and manipulate an application's UI elements. AT products work with MSAA enabled applications in order to provide better access for individuals who have physical or cognitive difficulties, impairments, or disabilities. Some examples of AT products are screen readers for users with limited sight, on screen keyboards for users with limited physical access, or narrators for users with limited hearing. MSAA can also be used for automated testing tools, and computer-based training applications.
The current and latest specification of MSAA is found in part of Microsoft UI Automation Community Promise Specification.