OpenText™ Functional Testing for Developers JavaScript SDK

Java. MenuTO

MenuTO

Constructor

A Java Menu test object

Members

displayName

Returns the object display name defined in the Application Model.

Methods

$(description) → {*}

Creates a child test object of this test object. This operation does not cause a search for the object in the AUT. OpenText Functional Testing for Developers interacts with the application only when a step runs that performs an operation on the AUT object.
Parameters:
Name Type Description
description Description The description of the test object. Can be a full test object description or a string. If a string is provided, it is interpreted as a CSS selector with a default test object type of WebElement.
Returns:
the new child test object with the provided description.
Type
*

$$(description, dontFilterByTypeopt) → {Promise.<Array.<TestObject>>}

Returns all child objects of this object that match the supplied test object description.
Parameters:
Name Type Attributes Default Description
description A description object that defines the test object type and the set of properties and values that should be common to all objects that are returned.
dontFilterByType boolean <optional>
false Set this parameter to true to avoid limiting the returned objects to a specific test object type.
Returns:
a promise that is fulfilled with an array of test objects that match the supplied description.
Type
Promise.<Array.<TestObject>>

absoluteLocation() → {Promise.<Point>}

Returns the object's absolute coordinates relative to the screen (in pixels), format: {x,y}.
Remark: 0,0 is always the top-left corner of the (primary) monitor.
Returns:
a promise that is fulfilled with the object's absolute coordinates.
Type
Promise.<Point>

attachedText() → {Promise.<string>}

Returns the object's attached text.
Returns:
a promise that is fulfilled with the object's attached text.
Type
Promise.<string>

backgroundColor() → {Promise.<string>}

Returns the object's background color.
Returns:
a promise that is fulfilled with the object's background color.
Type
Promise.<string>

callFTMethod(methodName) → {Promise.<void>|Promise.<any>}

Calls a method or property of an OpenText Functional Testing test object.
Parameters:
Name Type Description
methodName string The name of the method or property to call (additional arguments required by the method or property can be passed after this parameter).
Returns:
  • If the called method or property has no return value
    Type
    Promise.<void>
  • Returns a promise that contains the return value of the called method of property
    Type
    Promise.<any>

click(argsopt) → {Promise.<void>}

Clicks on this object using the definitions from the supplied args object. If you do not provide the args object, the click is performed in the center of the object using the left mouse button.
Parameters:
Name Type Attributes Description
args Object <optional>
The arguments for the click operation.
Properties
Name Type Attributes Default Description
button MouseButton <optional>
MouseButton.left The mouse button to use for the click.
anchor Position <optional>
Position.center The position within the object from which the offset is taken.
offset Object <optional>
The offset from the anchor position.
Properties
Name Type Attributes Default Description
x number <optional>
0 The x-coordinate of the offset.
y number <optional>
0 The y-coordinate of the offset.
Returns:
a promise that is fulfilled when the click operation ends.
Type
Promise.<void>

createObject(className, …argsopt) → {Promise.<Object>}

Creates a native object wrapping an instance of a Java object within your application.
Parameters:
Name Type Attributes Description
className string The java class name.
args Object <optional>
<repeatable>
Any arguments required for the object's constructor.
Returns:
a promise that is fulfilled with a native object wrapping an instance of a Java object within your application.
Type
Promise.<Object>

description() → {*}

Returns the description for this test object. The test object must be obtained using the $ method, otherwise, this method returns null.
Returns:
the description for this test object.
Type
*

doubleClick(argsopt) → {Promise.<void>}

Clicks on this object using the definitions from the supplied args object. If you do not provide the args object, the double-click is performed in the center of the object using the left mouse button.
Parameters:
Name Type Attributes Description
args Object <optional>
The arguments for the double-click operation.
Properties
Name Type Attributes Default Description
button MouseButton <optional>
MouseButton.left The mouse button to use for the double-click.
anchor Position <optional>
Position.center The anchor location within the object.
offset Object <optional>
The offset from the anchor position.
Properties
Name Type Attributes Default Description
x number <optional>
0 The x-coordinate of the offset.
y number <optional>
0 The y-coordinate of the offset.
Returns:
a promise that is fulfilled when the double-click operation ends.
Type
Promise.<void>

exists(timeoutopt) → {Promise.<boolean>}

Checks whether this object exists in the AUT.
Parameters:
Name Type Attributes Description
timeout number <optional>
The time (in seconds) to wait for this object before returning a result of true or false.
By default, uses the object synchronization timeout defined in the runtime engine settings.
Returns:
a promise that is fulfilled with a boolean indicating whether the object exists.
Type
Promise.<boolean>

fireEvent(eventInfo) → {Promise.<void>}

Triggers an event on the test object.
Important: This method is not supported for SWT controls.
Parameters:
Name Type Description
eventInfo Java.UiEventInfo | Java.MouseEventInfo | Java.KeyboardEventInfo The event info describing the event to trigger.
Returns:
a promise that is fulfilled when the fireEvent operation ends.
Type
Promise.<void>

fireEventByClass(className, eventId, …eventArgsopt) → {Promise.<void>}

Triggers an event by class on the test object.
Important: This method is not supported for SWT controls.
Parameters:
Name Type Attributes Description
className string The name of the Java class representing the event to be activated.
eventId string The event ID number or the final field string that represents the event ID.
eventArgs string | boolean | number <optional>
<repeatable>
Any parameters of the event's constructor except the source and EventID.
Returns:
a promise that is fulfilled when the fireEventByClass operation ends.
Type
Promise.<void>

foregroundColor() → {Promise.<string>}

Returns the object's foreground color.
Returns:
a promise that is fulfilled with the object's foreground color.
Type
Promise.<string>

getObjectProperty(propName)

Returns the value of a test object property.
Parameters:
Name Type Description
propName The name of the test object property.
Returns:
Promise | Promise a promise that is fulfilled with the value of a test object property. This can be any property of this control, including custom properties declared in a custom control.

getStatics(className) → {Promise.<Object>}

Get a native object wrapping a Java class capable of accessing static members (methods and fields) of the specified Java class.
Parameters:
Name Type Description
className string The java class name whose static members you want to access.
Returns:
a promise that is fulfilled with a native object wrapping a Java class capable of accessing static members within your application.
Type
Promise.<Object>

getSubMenu(subMenuPath) → {Java.MenuTO}

Returns a sub menu of this menu.
Parameters:
Name Type Description
subMenuPath string the path of the sub menu (separated by ';' char).
Returns:
A sub menu of this menu.
Type
Java.MenuTO

getTextLocations(text, rectangleopt) → {Promise.<Object>}

Returns all rectangular areas containing the specified text within this object.
Parameters:
Name Type Attributes Description
text string The text to search for in the test object.
rectangle Object <optional>
The rectangular area in the test object to search for the text.
Returns:
a promise that is fulfilled with an array of rectangles containing all rectangular areas containing the specified text within this object.
Type
Promise.<Object>

getVisibleText(rectangleopt) → {Promise.<string>}

Returns all visible text from this object.
Parameters:
Name Type Attributes Description
rectangle Object <optional>
The rectangular area in the test object to return the text from.
Returns:
a promise that is fulfilled with all the visible text from this object.
Type
Promise.<string>

highlight() → {Promise.<void>}

Highlights this object in the AUT.
Remark: This may be useful when debugging a test.
Returns:
a promise that is fulfilled when the highlighting operation ends.
Type
Promise.<void>

highlightMatches(description, dontFilterByTypeopt) → {Promise.<number>}

Highlights all children that match the supplied test object description.
Parameters:
Name Type Attributes Default Description
description A description object that defines the test object type and the set of properties and values that should be common to all objects that are highlighted.
dontFilterByType boolean <optional>
false Set this parameter to true to avoid limiting the highlighted objects to a specific test object type.
Returns:
a promise that is fulfilled with the number of matches that are found and highlighted.
Type
Promise.<number>

isEnabled() → {Promise.<boolean>}

Checks if the object is enabled.
Returns:
a promise that is fulfilled with a boolean value indicating if the object is enabled or not.
Type
Promise.<boolean>

isFocused() → {Promise.<boolean>}

Checks if the object is focused.
Returns:
a promise that is fulfilled with a boolean value indicating if the object is focused or not.
Type
Promise.<boolean>

isVisible() → {Promise.<boolean>}

Checks if the object is visible.
Returns:
a promise that is fulfilled with a boolean value indicating if the object is visible or not.
Type
Promise.<boolean>

isWrapped() → {Promise.<boolean>}

Checks if the object is wrapped. E.g.: If an edit field is part of an editable combobox, then the edit field is wrapped inside the combobox.
Returns:
a promise that is fulfilled with a boolean value indicating if the object is wrapped or not.
Type
Promise.<boolean>

label() → {Promise.<string>}

Returns the object's label.
Returns:
a promise that is fulfilled with the object's label.
Type
Promise.<string>

location() → {Promise.<Point>}

Returns the object's coordinates relative to the parent window (in pixels), format: {x,y}.
Returns:
a promise that is fulfilled with the object's relative coordinates.
Type
Promise.<Point>

nativeClass() → {Promise.<string>}

Returns the object's class name.
Returns:
a promise that is fulfilled with the object's class name.
Type
Promise.<string>

nativeObject() → {Promise.<Object>}

Returns the native application object that is represented by this test object instance, enabling you to access the native properties and methods provided by that object.
Returns:
a promise that is fulfilled with the native application object that is represented by this test object instance.
Type
Promise.<Object>

objectName() → {Promise.<string>}

Returns the object's object name.
Returns:
a promise that is fulfilled with the object's object name.
Type
Promise.<string>

parent() → {*}

Returns the parent test object of this test object. The child object must be obtained using the $ method, otherwise, this method returns null.
Returns:
the parent test object of this test object.
Type
*

path() → {Promise.<string>}

Returns the object's hierarchy (object ancestors).
Returns:
a promise that is fulfilled with the object's hierarchy (object ancestors).
Type
Promise.<string>

select() → {Promise.<void>}

Selects this Java menu item.
Returns:
a promise that is fulfilled when the select operation ends.
Type
Promise.<void>

selectSubMenu(subMenuPath) → {Promise.<void>}

Selects the specified sub menu.
Parameters:
Name Type Description
subMenuPath string the path of the sub menu (separated by ';' char).
Returns:
a promise that is fulfilled when the selectSubMenu operation ends.
Type
Promise.<void>

sendKeys(inputopt, modifiersopt) → {Promise.<void>}

Sends keyboard keys to an object.
Parameters:
Name Type Attributes Default Description
input string <optional>
The string to send to the object. Use FunctionKeys and Keys for special keys.
modifiers KeyModifier <optional>
KeyModifier.none The modifier keys. Use KeyModifier for this parameter.
Overrides:
Returns:
a promise that is fulfilled when the sendKeys operation ends.
Type
Promise.<void>

size() → {Promise.<Size>}

Returns the object's size (in pixels).
Returns:
a promise that is fulfilled with the object's size.
Type
Promise.<Size>

snapshot(optionsopt) → {Promise.<string>}

Captures and returns a Base64 representation of this test object.
Parameters:
Name Type Attributes Description
options Object <optional>
An options object that defines the image capture preferences.
Properties
Name Type Attributes Default Description
format string <optional>
"png" The format of the image. Possible values: png, bmp.
Returns:
a promise that is fulfilled with the Base64 string of the test object's image.
Type
Promise.<string>
A collection of all sub menus of this menu.
Returns:
a promise that is fulfilled with the number of sub menu items.
Type
Promise.<Array.<Java.MenuTO>>

tagName() → {Promise.<string>}

Returns the object's tag name.
Returns:
a promise that is fulfilled with the object's tag name.
Type
Promise.<string>

text() → {Promise.<string>}

The menu text.
Returns:
a promise that is fulfilled with the menu text.
Type
Promise.<string>

textRepresentation() → {Promise.<string>}

The menu text representation.
Returns:
a promise that is fulfilled with the menu text representation.
Type
Promise.<string>

verifyImageExists(imageToFind, similarityopt) → {Promise.<Object>}

Checks whether a snapshot of this object contains the supplied image.
Parameters:
Name Type Attributes Description
imageToFind string A Base64 string representation of the image to look for within the test object's snapshot.
similarity number <optional>
The minimum similarity between the two images (as a percentage), above which the find is considered a match. Default = 100.
Returns:
a promise that is fulfilled with an object representing the point where the image was located, or null if it was not found.
Type
Promise.<Object>

verifyImageMatch(expectedImage, pixelToleranceopt, rgbToleranceopt) → {Promise.<boolean>}

Checks whether a snapshot of this object and the supplied image are a match.
Parameters:
Name Type Attributes Description
expectedImage string A Base64 string representation of the image to compare to the test object snapshot.
pixelTolerance number <optional>
The percentage of pixels that can differ between the two images, and still be considered a match. Default = 0.
rgbTolerance number <optional>
The percentage by which the RGB values of the pixels in the two images can differ, and still be considered a match. Default = 0.
Returns:
a promise that is fulfilled with a boolean representing the comparison result.
Type
Promise.<boolean>

verifyImageMatchWithMask(expectedImage, maskAreaImage, pixelToleranceopt, rgbToleranceopt) → {Promise.<boolean>}

Checks whether a snapshot of this object and the supplied image are a match.
Parameters:
Name Type Attributes Description
expectedImage string A Base64 string representation of the image to compare to the test object snapshot.
maskAreaImage string A Base64 string representation of the image mask area to use in the image comparison.
pixelTolerance number <optional>
The percentage of pixels that can differ between the two images, and still be considered a match. Default = 0.
rgbTolerance number <optional>
The percentage by which the RGB values of the pixels in the two images can differ, and still be considered a match. Default = 0.
Returns:
a promise that is fulfilled with a boolean representing the comparison result.
Type
Promise.<boolean>

waitUntilEnabled(timeoutopt) → {Promise.<boolean>}

Waits until the test object becomes enabled or the timeout elapses. This method is useful for synchronizing your test with your application.
Parameters:
Name Type Attributes Description
timeout number <optional>
The length of time to wait (in milliseconds) for the test object to become enabled.
Returns:
a promise fulfilled with true if test object becomes enabled before the timeout is reached; otherwise, false.
Type
Promise.<boolean>

waitUntilExists(timeoutopt) → {Promise.<boolean>}

Waits until this test object exists or until the specified timeout elapses. This method is useful for synchronizing your test with your application.
Parameters:
Name Type Attributes Description
timeout number <optional>
The time (in seconds) to wait for this object to exist.
By default, uses the object synchronization timeout defined in the runtime engine settings.
Returns:
a promise that is fulfilled with a boolean indicating whether the object exists.
Type
Promise.<boolean>

waitUntilVisible(timeoutopt) → {Promise.<boolean>}

Waits until the test object becomes visible or the timeout elapses. This method is useful for synchronizing your test with your application.
Parameters:
Name Type Attributes Description
timeout number <optional>
The length of time to wait (in milliseconds) for the test object to become visible.
Returns:
a promise fulfilled with true if test object becomes visible before the timeout is reached; otherwise, false.
Type
Promise.<boolean>