VbToolbar Object
Description
A Visual Basic toolbar.
Operations
The sections below list the built-in methods and properties that you can use as operations for the VbToolbar object.
Note: You can also view a list and descriptions of the VbToolbar description properties, for use in object repository descriptions, programmatic descriptions, checkpoint and output value steps, and as argument values for the GetTOProperty and GetROProperty methods.
Methods
CaptureBitmap | Saves a screen capture of the object as a .png or .bmp image using the specified file name. |
Check | Checks whether the actual value of an item matches the expected value. |
CheckItemProperty | Checks whether the specified item property achieves the specified value within the specified timeout. |
CheckProperty | Checks whether the actual value of the specified object property matches the specified expected value within the specified timeout. |
ChildObjects | Returns the collection of child objects contained within the object. |
GetAllROProperties | Returns the collection of properties and current values from the object in the application. |
Click | Clicks the window. |
DblClick | Double-clicks the window. |
Drag | Performs the 'drag' part of a drag and drop operation. |
Drop | Performs the 'drop' part of a drag and drop operation. |
GetContent | Returns a list of all the buttons in the toolbar. |
GetItem | Returns the name of the specified button in a toolbar. |
GetItemProperty | Returns the value of the specified toolbar button property. |
GetItemsCount | Returns the number of buttons in the toolbar. |
GetROProperty | Returns the current value of the description property from the object in the application. |
GetSelection | Returns a list of all the buttons in a toolbar that are pressed or checked. |
GetTextLocation | Checks whether the specified text string is contained in the specified window area. |
GetTOProperties | Returns the collection of properties and values used to identify the object. |
GetTOProperty | Returns the value of the specified description property from the test object description. |
Highlight | Highlights the object in the application. |
GetVisibleText | Returns the text from the specified area. |
MouseMove | Moves the mouse pointer to the designated position inside the window. |
Output | Retrieves the current value of an item and stores it in a specified location. |
Press | Clicks the specified toolbar button. |
RefreshObject | Instructs UFT One to re-identify the object in the application the next time a step refers to this object. |
SetTOProperty | Sets the value of the specified description property in the test object description. |
ShowDropdown | Opens the dropdown menu associated with the specified toolbar button by clicking the arrow part of the button. |
ToString | Returns a string that represents the test object. |
Type | Types the specified string in the window. |
WaitItemProperty | Waits until the specified item property achieves the specified value or exceeds the specified timeout before continuing to the next step. |
WaitProperty | Waits until the specified object property achieves the specified value or exceeds the specified timeout before continuing to the next step. |
Properties
Exist | Checks whether the object currently exists in the open application. |
Object | Accesses the native methods and properties of the Visual Basic object. |
CheckItemProperty Method
Description
Checks whether the specified item property achieves the specified value within the specified timeout.
Syntax
object.CheckItemProperty (Item, PropertyName, PropertyValue, [TimeOut])
Arguments
Parameter | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Item |
Required. A Variant. The item name (with quotes) or numeric index (without quotes) can denote the item. The first item in a list is numbered 0. | ||||||||||||||||||||||||||
PropertyName |
Required. A String value. The name of the item property whose value is checked. The following properties are supported:
| ||||||||||||||||||||||||||
PropertyValue |
Required. A Variant. The expected value against which the actual item property value should be checked. You can either use a simple value or you can use a comparison object together with the value to perform more complex comparisons. | ||||||||||||||||||||||||||
TimeOut |
Optional. An unsigned long integer value. The time, in milliseconds, within which UFT One should check whether the actual value of the item property matches the specified expected value. If no value is specified, UFT One uses the time set in the Object Synchronization Timeout option in the Run pane of the Test Settings dialog box. |
Return Type
A Boolean value.
Returns TRUE if the item property achieves the value, and FALSE if the timeout is reached before the item property achieves the value.
A TRUE return value reports a Passed step to the run results; a FALSE return value reports a Failed step to the run results.
IMPORTANT
If the expected and actual values do not match, an error is reported and the test or component status is changed to failed.
Note: For test run synchronization, or whenever you do not want to fail the test if the expected and actual values do not match, use the WaitItemProperty method.
You can also use comparison objects to perform more complex value comparisons. For example, you can instruct UFT One to check whether a specific item property value is greater than the specified value.
An example of the syntax required when using a comparison object is: Object.CheckItemProperty 2, "text", micNotEqual("John")"
The following comparison objects can be used:
- micGreaterThan: Greater than; Specifies that UFT One checks whether the item property value is greater than the specified value.
- micLessThan: Less than; Specifies that UFT One checks whether the item property value is less than the specified value.
- micGreaterThanOrEqual: Greater than or equal to; Specifies that UFT One checks whether the item property value is greater than or equal to the specified value.
- micLessThanOrEqual: Less than or equal to; Specifies that UFT One checks whether the item property value is less than or equal to the specified value.
- micNotEqual: Not equal to; Specifies that UFT One checks whether the item property value is not equal to the specified value.
- micRegExpMatch: Regular expression; Specifies that UFT One checks whether the item property value achieves a regular expression match with the specified value. Regular expressions are case-sensitive and must match exactly. For example, 'E.*h' matches 'Earth' but not 'The Earth' or 'earth'.
When the types of the expected value and actual value do not match, the comparisons are performed as follows (in this order):
- Empty values: Empty values may be an uninitialized variable or field (which returns TRUE for the IsNull function in VBscript) or initialized to an empty value (which returns TRUE for the IsEmpty function is VBscript). When trying to compare two arguments when at least one is an empty value, the comparison assumes equality for two uninitialized arguments and for two empty arguments. Any other combination is considered unequal.
For example:
dim vEmpty
Object.CheckItemProperty 2, "text",micNotEqual(vEmpty)
will not wait for the timeout (because the 'text' property value is an empty string and the argument passed to micNotEqual is an empty value, and so micNotEqual finds them not equal and returns TRUE). - String values: When trying to compare a string value with non-string value, the string value is converted to the non-string type and then compared. If the string value cannot be converted to the non-string type, the comparison assumes the values are not equal.
For example:
Object.CheckItemProperty 2, "text", micGreaterThan("8")"
will not wait for the timeout if the 'text' property value is '16' (because micGreaterThan finds 16 to be greater than 8 and returns TRUE), but will wait if the 'text' property value is 'a' (because 'a' cannot be converted to a number). - Boolean values: When trying to compare a Boolean value with non-boolean value, the non-boolean value is converted to a boolean value and then compared. The conversion method assumes that any integer value other than '0' is TRUE, and that '0' alone is FALSE. If the conversion fails to produce a boolean value (for example, if the value is 'abc'), the comparison result will be FALSE (note that for the WaitProperty method this result would instruct UFT One to keep waiting). If the conversion succeeds, the method compares the two boolean values according to the comparison logic.
- Other value types: When other value types do not match, they are compared under the assumption that different types are not equal (nor greater than or less than each other).
Click Method
Description
Clicks the window.
Syntax
object.Click [X], [Y], [BUTTON]
Arguments
Parameter | Description |
---|---|
X |
Optional. An integer value. The x-coordinate of the click. Note that the specified coordinates are relative to the upper left corner of the object. The default value is the center of the object. Default value = -9999 |
Y |
Optional. An integer value. The y-coordinate of the click. Note that the specified coordinates are relative to the upper left corner of the object. The default value is the center of the object.
Default value = -9999 |
BUTTON |
Optional. A predefined constant or number. The mouse button used to click the object. Default value = micLeftBtn |
Return Type
None
Example
'The following example uses the Click method to click a right mouse 'button at coordinates 47, 131 on the OK button. VbWindow("frmLogin").VbButton("OK").Click 47, 131,
DblClick Method
Description
Double-clicks the window.
Syntax
object.DblClick X, Y, [BUTTON]
Arguments
Parameter | Description |
---|---|
X |
Required. An integer value. The x-coordinate of the double-click. Note that the specified coordinates are relative to the upper left corner of the object. |
Y |
Required. An integer value. The y-coordinate of the double-click. Note that the specified coordinates are relative to the upper left corner of the object. |
BUTTON |
Optional. A predefined constant or number. The mouse button used to double-click the object. Default value = micLeftBtn |
Return Type
None
Example
'The following example uses the DblClick method to double-click a 'right mouse button at coordinates 73, 120 on "SysListView32" 'object. VbWindow("frmMain").VbListView("SysListView32").DblClick 73, 120, 1
Drag Method
Description
Performs the 'drag' part of a drag and drop operation.
Syntax
object.Drag X, Y, [BUTTON]
Arguments
Parameter | Description |
---|---|
X |
Required. An integer value. The x-coordinate within the object from which the object is dragged. Note that the specified coordinates are relative to the upper left corner of the object. |
Y |
Required. An integer value. The y-coordinate within the object from which the object is dragged. Note that the specified coordinates are relative to the upper left corner of the object. |
BUTTON |
Optional. A predefined constant or number. The mouse button used to drag the object. Default value = micLeftBtn |
Return Type
None
Example
'The following example uses the Drag method to drag and drop an object in the 'InsertOrder frame. VbWindow("frmMain").VbFrame("Insert Order").Drag 10, 20 VbWindow("frmMain").VbFrame("Insert Order").Drop 30, 40
'The following example uses the Drag method to drag the object 'from coordinates 10, 20 within the Test window and drop the object 'at coordinates 30, 40 within the OtherWindow window. VbWindow("Test").Drag 10, 20 VbWindow("OtherWindow").Drop 30, 40
Drop Method
Description
Performs the 'drop' part of a drag and drop operation.
Syntax
object.Drop X, Y, [BUTTON]
Arguments
Parameter | Description |
---|---|
X |
Required. An integer value. The x-coordinate of the object onto which the object is dropped. Note that the specified coordinates are relative to the upper left corner of the object. |
Y |
Required. An integer value. The y-coordinate of the object onto which the object is dropped. Note that the specified coordinates are relative to the upper left corner of the object. |
BUTTON |
Optional. A predefined constant or number. The mouse button that is released to drop the object. Default value = micLeftBtn |
Return Type
None
Example
'The following example uses the Drop method to drag and drop the 'InsertOrder frame. VbWindow("frmMain").VbFrame("Insert Order").Drag 10, 20 VbWindow("frmMain").VbFrame("Insert Order").Drop 30, 40
'The following example uses the Drop method to drag the object 'from coordinates 10, 20 within the Test window and drop the 'object at coordinates 30, 40 within the OtherWindow. VbWindow("Test").Drag 10, 20 VbWindow("OtherWindow").Drop 30, 40
GetContent Method
Description
Returns a list of all the buttons in the toolbar.
Syntax
object.GetContent
Return Type
A String value.
The returned string contains all of the items in the toolbar separated by VBScript line feed characters.
Example
'The following example uses the GetContent method to check whether 'an item named 'Close' exists in the toolbar. tbContent = VbWindow("frmMain").VbToolbar("tbToolBar").GetContent() tbContantArray = Split(tbContent, vbLf) For i = 0 To UBound(tbContantArray) If tbContantArray(i) = "Close" Then Reporter.ReportEvent micPass, "Toolbar button search", "Close button is located at toolbar index " & i + 1 Exit For End If Next If i > UBound(tbContantArray) Then Reporter.ReportEvent micFail, "Toolbar button search", "Close button was not found in the toolbar" End If
GetItem Method
Description
Returns the name of the specified button in a toolbar.
Syntax
object.GetItem (Item)
Arguments
Parameter | Description |
---|---|
Item |
Required. A Variant. Numeric index of the button. Index values begin with 1. |
Return Type
A String value.
Example
'The following example enumerates through all the items in a toolbar and 'then uses the GetItem method to list all the items in an entry in the 'report. cItems = VbWindow("frmMain").VbToolbar("tbToolBar").GetItemsCount sReport = "Toolbar buttons count " & cItems & vbCr For iItem = 1 To cItems sName = VbWindow("frmMain").VbToolbar("tbToolBar").GetItem(iItem) sReport = sReport & "Name" & sName & vbTab Next Reporter.ReportEvent micDone, "Toolbar data", sReport
GetItemProperty Method
Description
Returns the value of the specified toolbar button property.
Syntax
object.GetItemProperty (Item, Property)
Arguments
Parameter | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Item |
Required. A Variant. The item name (with quotes) or numeric index (without quotes) can denote the item. Index values begin with 1. | ||||||||||||||||||||||||||
Property |
Required. A String value. Property to retrieve from the toolbar button. The following properties are supported:
|
Return Type
A Variant.
Example
'The following example creates an entry in the report containing a list 'of all the items in a toolbar and, using the GetItemProperty displays 'the value of selected properties for each item in the list. cItems = VbWindow("frmMain").VbToolbar("tbToolBar").GetItemsCount sReport = "Toolbar buttons count " & cItems & vbCr For iItem = 1 To cItems sName = VbWindow("frmMain").VbToolbar("tbToolBar").GetItem(iItem) sReport = sReport & "Name " & sName & vbTab sReport = sReport & "enabled " & VbWindow("frmMain").VbToolbar("tbToolBar").GetItemProperty(iItem, "enabled") & ", " & vbTab sReport = sReport & "indeterminate " & VbWindow("frmMain").VbToolbar("tbToolBar").GetItemProperty(iItem, "indeterminate") & ", " & vbTab sReport = sReport & "checked " & VbWindow("frmMain").VbToolbar("tbToolBar").GetItemProperty(iItem, "checked") & ", " & vbTab sReport = sReport & "index " & VbWindow("frmMain").VbToolbar("tbToolBar").GetItemProperty(iItem, "index") & vbCr Next Reporter.ReportEvent micDone, "Toolbar data", sReport
GetItemsCount Method
Description
Returns the number of buttons in the toolbar.
Syntax
object.GetItemsCount
Return Type
A long integer value.
Example
'The following example uses the GetItemsCount method to add a step to the 'run results displaying the number of items in the toolbar. cItems = VbWindow("frmMain").VbToolbar("tbToolBar").GetItemsCount sReport = "Toolbar buttons count " & cItems & vbCr Reporter.ReportEvent micDone, "Toolbar data", sReport
GetSelection Method
Description
Returns a list of all the buttons in a toolbar that are pressed or checked.
Syntax
object.GetSelection
Return Type
A String value.
The returned string contains all of the selected items in the toolbar separated by VBScript line feed characters.
Example
'The following example uses the GetSelection method to add a step to the 'run results displaying the currently selected items in the toolbar. Reporter.ReportEvent micDone, "Toolbar selection", VbWindow("frmMain").VbToolbar("tbToolBar").GetSelection()
GetTextLocation Method
Description
Checks whether the specified text string is contained in the specified window area.
Syntax
object.GetTextLocation (TextToFind, Left, Top, Right, Bottom, [MatchWholeWordOnly])
Arguments
Parameter | Description |
---|---|
TextToFind |
Required. A String value. The text string you want to locate. |
Left |
Required. A Variant. The left coordinate of the search area within the window or screen. |
Top |
Required. A Variant. The top coordinate of the search area within the window or screen. |
Right |
Required. A Variant. The right coordinate of the search area within the window or screen. |
Bottom |
Required. A Variant. The bottom coordinate of the search area within the window or screen. Note: Set the Left, Top, Right, and Bottom coordinates to -1 to search for the text string within the object's entire window. |
MatchWholeWordOnly |
Optional. A Boolean value. If True, the method searches for occurrences that are whole words only and not part of a larger word. If False, the method does not restrict the results to occurrences that are whole words only. Default value = True |
Return Type
A Boolean value.
IMPORTANT
- The text to capture must be visible in the application window when the step runs.
- This method returns True only if the TextToFind argument value is found within a single line in the specified area. The text search restarts on each line of text.
- If the TextToFind argument value includes a space, then this method searches for that text as whole words, regardless of the value set in the MatchWholeWords argument. For example, if you search for "a b" and the text "bla bla" exists, the method will still return False. However, if the MatchWholeWords argument is set to False, then a search for "la" in an area where "bla bla" exists, would return True.
- If the text is found (return value = True) and if the Left, Top, Right, and Bottom arguments are supplied as variables, then the method also returns the exact coordinates of the specified text to the supplied arguments (the returned coordinates overwrite the supplied ones).
- The results of this method may be different depending on the settings selected in the Text Recognition pane of the Options dialog box (Tools menu > Options item > GUI Testing tab > Text Recognition pane).
- The results of this method may be different in different run sessions depending on the operating system version you are using, service packs you have installed, other installed toolkits, or the APIs used in your application. Therefore, when possible, it is highly recommended to use the GetROProperty Method to retrieve the value of the text (or equivalent) property from an object in your application instead of using the GetTextLocation method.
- By default, when UFT One captures text for a text/text area checkpoint or output value step using the GetText, GetTextLocation, or GetVisibleText methods, it tries to retrieve the text directly from the object using a Windows API-based mechanism. If UFT One cannot capture the text this way (for example, because the text is part of a picture), it tries to capture the text using an OCR (optical character recognition) mechanism. For details about changing this behavior, see the Can QuickTest Professional Text Recognition behavior be modified Knowledgebase article (number KM202721).
Example
'The following example uses the GetTextLocation method to retrieve 'all of the text within the object. l = -1 t = -1 r = -1 b = -1 result = VbWindow("frmMain").VbEdit("txtName").GetTextLocation("2002", l, t, r, b) If result Then MsgBox "Text found. Coordinates:" & l & "," & t & "," & r & "," & b End If
GetVisibleText Method
Description
Returns the text from the specified area.
Syntax
object.GetVisibleText ([Left], [Top], [Right], [Bottom])
Arguments
Parameter | Description |
---|---|
Left |
Optional. A long integer value. The left coordinate of the search area within the object's window. Default value = -1 |
Top |
Optional. A long integer value. The top coordinate of the search area within the object's window. Default value = -1 |
Right |
Optional. A long integer value. The right coordinate of the search area within the object's window. Default value = -1 |
Bottom |
Optional. A long integer value. The bottom coordinate of the search area within the object's window. Note: If the Left, Top, Right, and Bottom arguments are not specified, the method returns all of the text within the visible part of the specified object. Default value = -1 |
Return Type
A String value.
The method returns the retrieved text, if any. Additionally, if text is found, the exact coordinates of the text are returned to the Left, Top, Right, and Bottom arguments.
IMPORTANT
- The text to capture must be visible in the application window when the step runs.
- The area is defined by pairs of coordinates that designate two diagonally opposite corners of a rectangle.
- The results of this method may be different depending on the settings selected in the Text Recognition pane of the Options dialog box (Tools menu > Options item > GUI Testing tab > Text Recognition pane).
- The results of this method may be different in different run sessions depending on the operating system version you are using, service packs you have installed, other installed toolkits, or the APIs used in your application. Therefore, when possible, it is highly recommended to use the GetROProperty Method to retrieve the value of the text (or equivalent) property from an object in your application instead of using the GetVisibleText method.
- By default, when UFT One captures text for a text/text area checkpoint or output value step using the GetText, GetTextLocation, or GetVisibleText methods, it tries to retrieve the text directly from the object using a Windows API-based mechanism. If UFT One cannot capture the text this way (for example, because the text is part of a picture), it tries to capture the text using an OCR (optical character recognition) mechanism. For details about changing this behavior, see the Can QuickTest Professional Text Recognition behavior be modified Knowledgebase article (number KM202721).
Example
'The following example uses the GetVisibleText method to retrieve 'the text from the "Test" window. If the returned string contains 'the "login:" sub-string, the Type method is used to type the '"guest" string in the window. TestText = VbWindow("Test").GetVisibleText If InStr(1, TestText, "login:", 1) > 0 Then VbWindow("Test").Type "guest" End If
'The following example uses the GetVisibleText method to retrieve 'the text within the specified coordinates. If the returned string 'is not "Catalog", the ReportEvent method is used to report a 'failed step. theText = VbWindow("frmMain").VbLabel("Name").GetVisibleText(16, 25, 56, 92) If theText <> "Catalog" Then Reporter.ReportEvent micFail, "Traders", "Text check failed" End If
MouseMove Method
Description
Moves the mouse pointer to the designated position inside the window.
Syntax
object.MouseMove X, Y
Arguments
Parameter | Description |
---|---|
X |
Required. An integer value. The position of the mouse pointer, expressed as an x (pixel) coordinate. Note that the specified coordinates are relative to the upper left corner of the object. |
Y |
Required. An integer value. The position of the mouse pointer, expressed as a y (pixel) coordinate. Note that the specified coordinates are relative to the upper left corner of the object. |
Return Type
None
Example
'The following example uses the MouseMove method to move the mouse 'pointer to the position (20, 30) inside the "Insert Order" button. VbWindow("frmMain").VbButton("Insert Order").MouseMove 20, 30
Press Method
Description
Clicks the specified toolbar button.
Syntax
object.Press Item, [BUTTON]
Arguments
Parameter | Description |
---|---|
Item |
Required. A Variant. The toolbar button to press. The button name (with quotes) or numeric index (without quotes) can denote the button. The name reflects the button's attached text (tooltip). The index of the first button in the toolbar is 1. |
BUTTON |
Optional. A predefined constant or number. The mouse button used to click the object. Default value = micLeftBtn |
Return Type
None
Example
'The following example uses the Press method to press the 'Bold' 'toolbar button. VbWindow("frmMain").VbToolbar("tbToolBar").Press "Bold"
ShowDropdown Method
Description
Opens the dropdown menu associated with the specified toolbar button by clicking the arrow part of the button.
Syntax
object.ShowDropdown (Item)
Arguments
Parameter | Description |
---|---|
Item |
Required. A Variant. The toolbar button for which you want to show the drop-down item. The button name (with quotes) or numeric index (without quotes) can denote the button. The name reflects the button's attached text (tooltip). The index of the first button in the toolbar is numbered 1. |
Return Type
None.
Example
'The following examples use the ShowDropDown method to display the 'drop-down menu for the 'Color' toolbar button using the button's 'name or index. 'ShowDropdown Method VbWindow("frmMain").VbToolbar("tbToolBar").ShowDropdown "Color" VbWindow("frmMain").VbToolbar("tbToolBar").WinMenu("ContextMenu").Select "Green" 'or VbWindow("frmMain").VbToolbar("tbToolBar").ShowDropdown 1 VbWindow("frmMain").VbToolbar("tbToolBar").WinMenu("ContextMenu").Select "Green"
Type Method
Description
Types the specified string in the window.
Syntax
object.Type KeyboardInput
Arguments
Parameter | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
KeyboardInput |
Required. A String value. The text string and/or constants representing non-alphanumeric keys. The following constants are available:
|
Return Type
None
IMPORTANT
Although the Type method is supported for most objects, if you enter a Type statement for an object in which a user cannot enter text, the method has no visual effect.
Example
'The following example uses the Type method to press the "OK" button 'by pressing the "Enter" key. VbWindow("frmLogin").VbButton("OK").Type micReturn
WaitItemProperty Method
Description
Waits until the specified item property achieves the specified value or exceeds the specified timeout before continuing to the next step.
Syntax
object.WaitItemProperty (Item, PropertyName, PropertyValue, [TimeOut])
Arguments
Parameter | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Item |
Required. A Variant. The item name (with quotes) or numeric index (without quotes) can denote the item. The first item in a list is numbered 0. | ||||||||||||||||||||||||||
PropertyName |
Required. A String value. The name of the item property whose value is checked. The following properties are supported:
| ||||||||||||||||||||||||||
PropertyValue |
Required. A Variant. The expected value against which the actual item property value should be checked. You can either use a simple value or you can use a comparison object together with the value to perform more complex comparisons. | ||||||||||||||||||||||||||
TimeOut |
Optional. A long integer value. The time, in milliseconds, after which UFT One continues to the next step if the specified item value is not achieved. If no value is specified, UFT One uses the time set in the Object Synchronization Timeout option in the Run pane of the Test Settings dialog box. Default value = -1 |
Return Type
A Boolean value.
Returns TRUE if the item property achieves the value, and FALSE if the timeout is reached before the item property achieves the value. A FALSE return value does not indicate a failed step.
IMPORTANT
Tip: This method is useful for test run synchronization. Unlike the Exist method and the WaitProperty method, the WaitItemProperty method enables you to synchronize the test run based on a specific object item property. For example, you can instruct UFT One to wait for a particular string to appear in the second panel of the "StatusBar" control:
' Wait up to 30 seconds for the string "Ready" to appear in the second panel of the "StatusBar" control.
Window("Test").WinStatusBar("StatusBar").WaitItemProperty 2, "text", "Ready", 30000
You can also use comparison objects to perform more complex value comparisons. For example, you can instruct UFT One to wait until a specific item property value is greater than the specified value.
An example of the syntax required when using a comparison object is: Object.WaitItemProperty 2, "text", micNotEqual("John")"
The following comparison objects can be used:
- micGreaterThan: Greater than; Specifies that UFT One waits until the item property value is greater than the specified value.
- micLessThan: Less than; Specifies that UFT One waits until the item property value is less than the specified value.
- micGreaterThanOrEqual: Greater than or equal to; Specifies that UFT One waits until the item property value is greater than or equal to the specified value.
- micLessThanOrEqual: Less than or equal to; Specifies that UFT One waits until the item property value is less than or equal to the specified value.
- micNotEqual: Not equal to; Specifies that UFT One waits until the item property value is not equal to the specified value.
- micRegExpMatch: Regular expression; Specifies that UFT One waits until the item property value achieves a regular expression match with the specified value. Regular expressions are case-sensitive and must match exactly. For example, 'E.*h' matches 'Earth' but not 'The Earth' or 'earth'.
When the types of the expected value and actual value do not match, the comparisons are performed as follows (in this order):
- Empty values: Empty values may be an uninitialized variable or field (which returns TRUE for the IsNull function in VBscript) or initialized to an empty value (which returns TRUE for the IsEmpty function is VBscript). When trying to compare two arguments when at least one is an empty value, the comparison assumes equality for two uninitialized arguments and for two empty arguments. Any other combination is considered unequal.
For example:
dim vEmpty
Object.WaitItemProperty 2, "text",micNotEqual(vEmpty)
will not wait for the timeout (because the 'text' property value is an empty string and the argument passed to micNotEqual is an empty value, and so micNotEqual finds them not equal and returns TRUE). - String values: When trying to compare a string value with non-string value, the string value is converted to the non-string type and then compared. If the string value cannot be converted to the non-string type, the comparison assumes the values are not equal.
For example:
Object.WaitItemProperty 2, "text",micGreaterThan(8) will not wait for the timeout if the 'text' property value is '16' (because micGreaterThan finds 16 to be greater than 8 and returns TRUE), but will wait if the 'text' property value is 'a' (because 'a' cannot be converted to a number). - Boolean values: When trying to compare a Boolean value with non-boolean value, the non-boolean value is converted to a boolean value and then compared. The conversion method assumes that any integer value other than '0' is TRUE, and that '0' alone is FALSE. If the conversion fails to produce a boolean value (for example, if the value is 'abc'), the comparison result will be FALSE (note that for the WaitProperty method this result would instruct UFT One to keep waiting). If the conversion succeeds, the method compares the two boolean values according to the comparison logic.
- Other value types: When other value types do not match, they are compared under the assumption that different types are not equal (nor greater than or less than each other).
See also: