The following information is intended for users with expertise in the Win32 API and the Windows messages model. It expands on the information provided for some of the options described in Windows Applications > Advanced Pane (Options Dialog Box > GUI Testing Tab).
You should note the following when testing Windows-based applications:
|Always enumerate child windows||
If UFT does not correctly record an object in your application, you can select this option to force UFT to enumerate all windows in the system. This means that even when UFT looks for a window without WS_CHILD style, it enumerates all windows in the system and not only the top-level windows.
You should select this option if there is a window in your application that does not have a WS_CHILD style but does have a parent (not an owner) window.
|Record only the object's basic operation||
In general, UFT records operations on Windows objects based on Windows messages sent by the application. UFT recognizes the sequence of Windows messages sent to a specific application window by the system, and uses a smart algorithm to determine which operation to record.
In rare cases (where a non-standard message sequence is used), the smart algorithm may record unwanted operations. Select this option if you want to record only the object's basic operation when the selected event occurs. When you select this option, you can also select when to record the operation. If you select On mouse button down, UFT records the operation performed when a WM_LBUTTONDOWN message is detected; if you select On mouse button up, UFT records the operation performed when a WM_LBUTTONUP message is detected.
|Keyboard state detection||
If UFT does not correctly record keyboard key combinations (for example, CTRL+Y, or ALT+CTRL+HOME), you can try changing the default setting for this option. Following is a brief explanation of each of the options:
|Menu recording mode||
In most applications, Windows sends a WM_CONTEXTMENU message, WM_ENTERMENULOOP message, WM_INITMENU message, WM_INITMENUPOPUP message, or other initialization message when a user opens a menu. Windows then sends a WM_MENUSELECT message when a user selects a menu item.
The Verify menu initialization event option instructs UFT to record menu operations only after detecting a menu initialization message. If UFT does not correctly record menu operations, or if your application does not send initialization messages before sending WM_MENUSELECT messages, try using the Ignore menu initialization event option. This instructs UFT to always record menu operations.