AICalendar Object
This object is supported as a technical preview.
Description
An internal object used to perform operations on a calendar object identified using AI.
AICalendar objects are containers. You can access the specific controls inside the AICalendar container and perform operations directly on them.
IMPORTANT
AI-based testing is supported on the following technologies:
Web, mobile, and SAP GUI for Windows.
AI objects are supported in UFT One only when:
- The UFT One Web Add-in, Mobile Add-in, or SAP Solutions Add-in is installed and loaded.
- The UFT One AI Features are installed and AI is enabled in the UFT One options. For details, see the UFT One Help Center.
To retrieve an AICalendar object, use the AIUtil.Calendar property.
Operations
The sections below list the built-in methods and properties that you can use as operations for the AICalendar object.
Note: You can also view a list and descriptions of the AICalendar properties that you can retrieve using the GetObjectProperty and GetAllProperties methods. You can then use the properties to check the object's location or content.
Methods
CaptureBitmap | Saves a screen capture of the object as a .png or .bmp image using the specified file name. |
CheckExists | A checkpoint that checks whether the object currently exists in the set context. |
GetAllProperties | Retrieves all of the AICalendar's properties and their values from the application. |
GetObjectProperty | Retrieves the value of the specified object property from the object in the application. |
Highlight | Highlights the object in the application. |
Properties
AIObject | Creates an AIObject for the specified control found inside the container. |
Exist | Checks whether the object currently exists in the set context. |
FindText | Creates an AITextObject for the specified text found inside the container. |
FindTextBlock | Creates an AITextObject for the specified text block found inside the container. |
CaptureBitmap Method
Description
Saves a screen capture of the object as a .png or .bmp image using the specified file name.
Syntax
AIUtil.Calendar([locator], [locatorData]).CaptureBitmap FullFileName, [OverrideExisting]
Arguments
Parameter | Description |
---|---|
FullFileName | Required. A String value. The path to the file to store the screen capture. The file extension indicates whether to save the capture as a .png or .bmp file. |
OverrideExisting | Optional. A Boolean value. Indicates what to do if a file by the specified name already exists: True: Replace the existing file with the new capture. False (Default): The step fails if a file by the specified name already exists. |
Return Type
None
Examples
'The following example uses the CaptureBitmap method to capture an image of the calendar
' currently open in the browser.
AIUtil.SetContext Browser("creationtime:=0")
AIUtil.Calendar.CaptureBitmap "c:\calendar.bmp"
CheckExists Method
Description
A checkpoint that checks whether the object currently exists in the set context.
Syntax
AIUtil.Calendar([locator], [locatorData]).CheckExists expected
Arguments
Parameter | Description |
---|---|
expected | A Boolean value. Specifies whether this checkpoint expects the object to exist. Possible values: true. The checkpoint passes if the object is found within the set context before the timeout expires. false. The checkpoint passes if the object is not found by the time the timeout expires. |
Remarks
This method uses the timeout defined in the Object Synchronization Timeout option in the Run pane of the Test Settings dialog box.
UFT One directly performs this method without verifying object identification even if you enable it in Options > GUI Testing > AI or use the AIUtil.RunSettings.VerifyIdentification.Enable step.
Return Type
A Boolean value.
Returns TRUE if the checkpoint passes, otherwise FALSE.
A TRUE return value reports a Passed step to the run results; a FALSE return value reports a Failed step to the run results.
Example
AIUtil.SetContext Browser("creationtime:=0")
'If there are no calendars on screen - open them by clicking on the "Leaving" text blockIf Not AIUtil.Calendar(micFromLeft, 1).Exist(0) Then
AIUtil.FindTextBlock("Leaving").Click
End If
GetAllProperties Method
Description
Retrieves all of the AICalendar's properties and their values from the application.
Syntax
AIUtil.Calendar([locator], [locatorData]).GetAllProperties
Return Type
A Dictionary object
Example
'The following example retrieves the properties of an AICalendar and prints them.
AIUtil.SetContext Browser("creationtime:=0") 'Set the context for AI
Set properties = AIUtil.Calendar(micFromLeft, 1).GetAllProperties
For i = 0 To properties.count - 1
print properties.keys()(i) & ":" & properties.items()(i)
Next
'Print just one of the retrieved properties.
print "height:'" & properties("height") & "'"
GetObjectProperty Method
Description
Retrieves the value of the specified object property from the object in the application.
Syntax
AIUtil.Calendar([locator], [locatorData]).GetObjectProperty (property)
Arguments
Parameter | Description |
---|---|
property | Required. A String. The name of the property whose value to return. |
Return Type
A Variant.
Example
'The following example retrieves the height property of an AICalendar and prints it.
AIUtil.SetContext Browser("creationtime:=0") 'Set the context for AI
print "height:'" & AIUtil.Calendar(micFromLeft, 1).GetObjectProperty ("height") & "'"
Highlight Method
Description
Highlights the object in the application.
Syntax
AIUtil.Calendar([locator], [locatorData]).Highlight
Return Type
None
Example
'Verify that the 1st calendar from the left is displayed and highlight it
AIUtil.SetContext Device("device") 'Set the context for AI
AIUtil.Calendar(micFromLeft, 1).CheckExists True
AIUtil.Calendar(micFromLeft, 1).Highlight
AIObject Property
Description
Creates an AIObject Object for the specified control. The control can be specified by type, and for some control types, by the object text.
If there are multiple similar objects in the container, use the object's relative location in the container to describe it uniquely.
Syntax
AIUtil.Calendar([locator], [locatorData]).AIObject ControlType, [AIText], [locator], [locatorData]
Arguments
Parameter | Description |
---|---|
ControlType |
Required. A String value. The type of the control. For a list of supported control types, see the UFT One Help Center. |
AIText |
Optional. A String value. |
locator | Optional. A predefined constant or string value. Mandatory if you specify a value for the locatorData parameter. Used to describe the unique location of an object that may appear multiple times in the container. The location can be ordinal, relative to similar objects in the container, or proximal, relative to a different AI object, considered an anchor.
|
locatorData | Optional. An Integer value or an AI object. Mandatory if you specify a value for the locator parameter.
|
Return Type
An AIObject Object.
Example
' The following example advances the calendar to October 25th 2021
' Setting the Calendar into a variable improves performance because the calendar is only located once
' Do not do this if the calendar's location changes while it is used
' If there is only one calendar displayed, it can be identified without locators
Set cal = AIUtil.Calendar
' Click the Next button (right_triangle) under the calendar to advance to October 2021
While Not cal.FindTextBlock("October 2021").Exist(0)
cal.AIObject("right_triangle").Click
Wend
' Click on the 25th
cal.FindText("25").Click
Exist Property
Description
Checks whether the object currently exists in the set context.
Syntax
AIUtil.Calendar([locator], [locatorData]).Exist ([TimeOut])
Arguments
Parameter | Description |
---|---|
TimeOut | Optional. An unsigned long integer value. The length of time (in seconds) to search for the object before returning a True or False value.
Note: A value of 0 is not supported for Mobile test objects. For more information on the Object Synchronization Timeout, see the UFT One Help Center. |
Return Type
A Boolean value indicating whether the object exists.
Remarks
The Exist property can only be used in statements that use its return value. For example, assignment, print, and if statements.
UFT One directly performs this method without verifying object identification even if you enable it in Options > GUI Testing > AI or use the AIUtil.RunSettings.VerifyIdentification.Enable step.
Example
' The following example advances the calendar to October 25th 2021
' Setting the Calendar into a variable improves performance because the calendar is only located once
' Do not do this if the calendar's location changes while it is used
' If there is only one calendar displayed, it can be identified without locators
Set cal = AIUtil.Calendar
' Click the Next button (right_triangle) under the calendar to advance to October 2021
While Not cal.FindTextBlock("October 2021").Exist(0)
cal.AIObject("right_triangle").Click
Wend
' Click on the 25th
cal.FindText("25").Click
FindText Property
Description
Creates an AITextObject Object for the specified text. This may be partial text within a larger block of text.
If there are multiple similar objects in the container, use the object's relative location in the container to describe it uniquely.
Syntax
AIUtil.Calendar([locator], [locatorData]).FindText AIText, [locator], [locatorData]
Arguments
Parameter | Description |
---|---|
AIText |
Required. A String value. Enter the micAnyText constant if you want to ignore this parameter and provide values for locator and locatorData. This is useful when you want to identify an object by its location and later retrieve the text from the object. |
locator | Optional. A predefined constant or string value. Mandatory if you specify a value for the locatorData parameter. Used to describe the unique location of an object that may appear multiple times in the container. The location can be ordinal, relative to similar objects in the container, or proximal, relative to a different AI object, considered an anchor.
|
locatorData | Optional. An Integer value or an AI object. Mandatory if you specify a value for the locator parameter.
|
Return Type
Example
' The following example advances the calendar to October 25th 2021
' Setting the Calendar into a variable improves performance because the calendar is only located once
' Do not do this if the calendar's location changes while it is used
' If there is only one calendar displayed, it can be identified without locators
Set cal = AIUtil.Calendar
' Click the Next button (right_triangle) under the calendar to advance to October 2021
While Not cal.FindTextBlock("October 2021").Exist(0)
cal.AIObject("right_triangle").Click
Wend
' Click on the 25th
cal.FindText("25").Click
FindTextBlock Property
Description
Creates an AITextObject Object for the specified text block.
If there are multiple similar objects on in the container, use the object's relative location in the container to describe it uniquely.
Syntax
AIUtil.Calendar([locator], [locatorData]).FindTextBlock AIText, [locator], [locatorData]
Arguments
Parameter | Description |
---|---|
AIText |
Required. A String value. Enter the micAnyText constant if you want to ignore this parameter and provide values for locator and locatorData. This is useful when you want to identify an object by its location and later retrieve the text from the object. |
locator | Optional. A predefined constant or string value. Mandatory if you specify a value for the locatorData parameter. Used to describe the unique location of an object that may appear multiple times in the container. The location can be ordinal, relative to similar objects in the container, or proximal, relative to a different AI object, considered an anchor.
|
locatorData | Optional. An Integer value or an AI object. Mandatory if you specify a value for the locator parameter.
|
Return Type
Example
' The following example advances the calendar to October 25th 2021
' Setting the Calendar into a variable improves performance because the calendar is only located once
' Do not do this if the calendar's location changes while it is used
' If there is only one calendar displayed, it can be identified without locators
Set cal = AIUtil.Calendar
' Click the Next button (right_triangle) under the calendar to advance to October 2021
While Not cal.FindTextBlock("October 2021").Exist(0)
cal.AIObject("right_triangle").Click
Wend
' Click on the 25th
cal.FindText("25").Click
See also: