Waits
until the specified object property achieves the specified value or exceeds the
specified timeout before continuing to the next step.
Tip: This method is
useful for test run synchronization. Unlike the Exist
method, the WaitProperty method enables you
to synchronize the test run based on a specific object property. For example,
you can instruct QuickTest to wait for a particular string to appear in a static
text control:
' Wait up to 30 seconds for the string "Ready" to appear in the "Status" text control.
Window("Test").Static("Status:").WaitProperty "text", "Ready", 30000
You can also use comparison objects to perform more complex value comparisons. For example, you can instruct QuickTest to wait until a specific property value is greater than the specified value.
An example of the syntax required when using a comparison object is: Object.WaitProperty "items count",micGreaterThan(8)
The following comparison objects can be used:
' Wait up to 30 seconds for the string "Ready" to appear in the "Status" text control.
Window("Test").Static("Status:").WaitProperty "text", "Ready", 30000
You can also use comparison objects to perform more complex value comparisons. For example, you can instruct QuickTest to wait until a specific property value is greater than the specified value.
An example of the syntax required when using a comparison object is: Object.WaitProperty "items count",micGreaterThan(8)
The following comparison objects can be used:
- micGreaterThan: Greater than; Specifies that QuickTest waits until the property value is greater than the specified value.
- micLessThan: Less than; Specifies that QuickTest waits until the property value is less than the specified value.
- micGreaterThanOrEqual: Greater than or equal to; Specifies that QuickTest waits until the property value is greater than or equal to the specified value.
- micLessThanOrEqual: Less than or equal to; Specifies that QuickTest waits until the property value is less than or equal to the specified value.
- micNotEqual: Not equal to; Specifies that QuickTest waits until the property value is not equal to the specified value.
- micRegExpMatch: Regular expression; Specifies that QuickTest waits until the 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'.
- 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.WaitProperty “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.WaitProperty “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
QuickTest 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).
object.WaitProperty (PropertyName,
PropertyValue, [TimeOut])
Argument | Description |
object | A test object of type WebList. |
PropertyName | Required. A String value. The name of the property whose value is checked. The available properties are listed in the Identification Properties page under the Properties section for each test object. |
PropertyValue | Required. A Variant value. The value to be achieved before continuing to the next step. 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 value. The time, in milliseconds, after which QuickTest continues to the next step if the specified value is not achieved. If no value is specified, QuickTest uses the time set in the Object Synchronization Timeout option in the Run pane of the Test Settings dialog box. |
A
Boolean value. Returns
TRUE if the property achieves the value, and FALSE if the timeout is reached
before the property achieves the value. A FALSE return value does not indicate a
failed step.
No comments:
Post a Comment