Plugin-specific settings can be used to alter the behavior of individual Ranorex plugins, for example, to achieve backward compatibility with older versions. Plugin-specific settings are grouped in User settings and Solution settings.
- CEF (solution setting)
- Delphi (solution setting)
- Java (solution setting)
- Mobile (solution setting)
- Mouse (solution setting)
- MSAA (solution setting)
- *Performance tracing (solution setting)
- Qt (solution setting)
- UIA (solution setting)
- Web (solution setting)
- WebDriver (solution setting)
- Win32 (solution setting)
- WPF (solution setting)
- WPF Tree (solution setting)
The plugin-specific settings are accessible through the settings dialog and the tab page Plugins. The plugin-specific settings are grouped as follows:
-
Solution settings
-
User settings
CEF (solution setting)
-
Process name blacklist
This list contains process names (without the file extension) which should be ignored by the CEF plugin. If a process should be ignored by the CEF plugin, add it to the list in a new line.
Delphi (solution setting)
-
Enabled
Determines if the Delphi plugin is enabled.
Java (solution setting)
-
Enable filtering on the Fx scenegraph
Filters dummy and intermediate containers out of the Fx scenegraph.
-
Show SWT custom data properties
Includes SWT custom Widget Data values as dynamic properties.
-
Use Java SWT legacy automation mode
Enable Java SWT legacy automation mode using MSAA and Win32
-
Whitelisted class names
Adds additional whitelisted class names (comma separated) for Java object recognition.
Mobile (solution setting)
-
Android OS Automation
Enables automation on Android OS screens. Disable to increase performance.
-
Auto-reconnect attempts
When the connection to a device is lost Ranorex tries to reconnect automatically. With this parameter, you can specify how many reconnect attempts should be made until the device is set to the ‘Error’ state. If you don’t want to reconnect automatically, set this parameter to 0.
-
Connect timeout
After this period, the connection attempt will be aborted if the device is not reachable.
-
Deploy timeout
Sets the timeout for deploying a mobile app. The required time depends on your application size and the deployment method. Deploying an app takes longer than deploying via a network.
-
Devices
This is used internally by the Ranorex system and is not user-editable.
-
General timeout
The timeout for short-running background processes. This timeout is used for very short running processes (less than 10 seconds in general). If you get a lot of timeout exceptions, that do not occur during special operations like instrumentation or deploying, try to increase this value.
-
Group devices by
Determines how devices are grouped in a dialog.
-
Instrument timeout
Sets the timeout for instrumentation operations. A good initial value is 2 minutes. For very large applications the time required for instrumentation can take up to 10 minutes depending on the machine power.
-
iOS: Maximum number of invisible children
-
- -1 will fetch all cells of UITable and UICollection views. Use this setting only, when all views have a relatively small number of cells and static/finite data sources.
- 0 will disable the fetching of invisible cells. Generally, you should use this setting, when data in your tables is loaded dynamically e.g. from successive web requests.
- # (e.g. 50) will fetch all visible cells and the first 50 cells surrounding the visible cells area.
-
Java Runtime installation path
The path of the currently used Java Runtime Environment (JRE) installation required for Android automation.
-
Network discovery timeout
Specifies for how long Ranorex sends UDP broadcasts to find devices that can be used for automation. Normally, a device should respond within a few seconds.
-
Prompt on IP – address change
If set to true, Ranorex tries to check if the IP address of a device has changed since the last usage and shows a message if so. By setting this parameter to false you can disable this check.
-
Remote call timeout
The time Ranorex waits for a remote procedure call response until it assumes a connection loss if no response is received.
-
Screenshots on AndroidOS
Captures screenshots on AndroidOS screens. Disable to improve test execution performance.
-
Sort devices by
Determines how devices are sorted in a dialog.
-
USB discovery timeout
The timeout for discovering USB-connected devices.
Mouse (solution setting)
-
Mouse move interpolation mode
Interpolation modes for the mouse cursor moving between start and end points (Mouse.Move(..)).
MSAA (solution setting)
-
Evaluate computationally expensive attributes
Setting this value to true instructs the plugin to evaluate attributes that are expensive to compute and may result in longer delays when getting such attributes. Note that spying on an element with such expensive attributes may take considerable time.
-
Filter elements
Setting this value to false makes all MSAA elements available without filtering, including elements being unavailable, invisible, or equivalent to elements of other flavors.
-
Filter Windows Forms elements
Setting this value to false makes MSAA elements available that are direct children of Windows Forms elements and have the same role and screen rectangle as the parent element.
-
Filtering compatibility level
If you need legacy RanoreXPaths (created with an older Ranorex version) to work with the current Ranorex version, set this property to the appropriate value matching the Ranorex version used to create the legacy RanoreXPaths.
-
Refine FromPoint results
Setting this value to true results in an additional search operation for a better fitting element for every MSAA FromPoint operation (for example, used by Element.FindFromPoint). This may produce better results if the MSAA FromPoint implementation of a control is broken.
*Performance tracing (solution setting)
This setting is explained in Performance tracing
Qt (solution setting)
-
Enable filtering on the QtQuick scenegraph
Enables filtering of the QtQuick scenegraph by skipping or removing unnecessary layout, loader, and style items.
-
Use QT legacy automation mode
Enable Qt legacy automation mode using MSAA and Qt Accessibility.
UIA (solution setting)
-
Enable debugging mode for Windows apps
If set to true, the debugging mode for Windows apps will be enabled, causing them to not be suspended until the login session is closed (user logout). When set to false, the plugin will instead try to resume suspended apps when it needs to access them (possible race condition may cause freeze until the app is manually resumed).
-
Enable filtering of Windows app frame
If set to true, the frames of Windows apps introduced with Windows 10 are filtered and all relevant elements of those frames are displayed as the child of the app element. This allows for transparent automation of Windows apps in windowed and full-screen mode.
-
Enumerate lists using the ItemContainerPattern
Setting this value to true instructs the plugin to use the ItemContainerPattern to iterate items of virtual lists that implement this UI Automation pattern.
Depending on the implementation of the control, iterating children using this pattern should also return items that are currently scrolled out of view, but might also be slower than the usual way to get child elements.
Note that switching this setting can render existing RanoreXPaths invalid for controls implementing the ItemContainerPattern.
-
Evaluate computationally expensive attributes
Setting this value to true instructs the plugin to evaluate attributes that are expensive to compute and may result in longer delays when getting such attributes. Note that spying on an element with such expensive attributes may take considerable time.
-
Force virtual items to be realized
Forces virtual items to be realized when trying to get their child elements. Setting this value to true allows searching lists with virtual items, but realizing may have undesired effects on the list depending on the list implementation, e.g. that the list is scrolled to make the realized item visible.
-
Provide elements for non-WPF windows natively implementing UIA
Setting this value to true instructs the plugin to provide elements, also for non-WPF windows which natively implement the UIA interface.
-
Subscribe to the UIA FocusChangedEvent
If set to True, the plugin subscribes to the UI FocusChangedEvent, which may cause applications (like MS PowerPoint) to create more UIA elements and thus may improve object recognition, but may also negatively affect performance.
-
Force recognition of context menus with UIA plugin
If set to true, context menus will be recognized with UIA plugin if possible. Otherwise, they will be recognized with MSAA plugin.
Web (solution setting)
-
Enable automation of embedded IE web documents
Enable automation of Internet Explorer web documents embedded in other applications.
WebDriver (solution setting)
-
Attach to open sessions
Attach to existing WebDriver sessions to analyze and debug tests. Not recommended for high-latency environments. If the setting is disabled, tests/debug runs have to include an ‘Open Browser’ Action.
-
Browser Tab Automation
Enable automation of multiple tabs in a browser. Not recommended for high-latency environments.
-
DOM fetch mode
Can be set to ‘Always’ or ‘WhenChanged’. Always: DOM will be updated at specific intervals. WhenChanged: Before DOM is fetched a call to check for changes is done. Only after DOM changes are detected, the whole DOM is pulled from the remote. This setting preserves bandwidth.
-
DOM update interval
The timespan of the interval to update the DOM.
-
Screenshot update interval
The timespan of the interval to update the screenshots. Causes errors if too small.
-
Update screenshots after dom change
Update screenshots after DOM changing operations (for example, mouse clicks). It is not recommended for high-latency environments.
-
WebDriver Command Timeout
Maximum wait duration for a web driver command to return a result. If the call takes longer a timeout exception will be thrown and may set the endpoint into the error state. This parameter does only take effect after a program restart.
Win32 (solution setting)
-
*Black-listed process names
Process names you enter here are blacklisted for object recognition, for example, Ranorex Studio and its components are not able to identify UI elements in these processes.
Processes entered here are ignored if there are entries in the whitelist or the setting “White-listed process names” (see below).
-
Enable accessibility (MSAA) actions and attributes
Specifies whether Win32 elements provide accessibility (MSAA) actions and attributes (as a Dynamic capability).
-
Enable basic Delphi support
Enables support for basic Delphi controls such as text boxes, buttons, etc. Set to false for backward compatibility.
-
Read UI Automation attributes
Specifies whether the AutomationId is tracked and presented.
- Show hidden elements in the element tree
Specifies whether hidden elements are visible in Spy.
-
Use legacy Form role
Enables 2.X legacy mode where many elements improperly had the Form role. Set to True for backward compatibility with 2.X paths.
-
*White-listed process names
Process names you enter here are whitelisted for object recognition, for example, Ranorex Studio and its components can identify UI elements only for these processes, all others will be ignored.
This setting shares entries with the whitelisting feature and is a simpler version of it. Overrides entries in the setting of Black-listed process names.
WPF (solution setting)
-
Allow selected instance properties
Extend the dynamic attribute list with entries for plain .NET
properties. Each line specifies a full-type name and the attribute name, separated by a pipe, like Ranorex.ExampleType|IsAvailable
-
Disable WPF plug-in for processes
Do not use the native WPF plug-in for any process specified in the list; keep using UIAutomation for WPF as in Ranorex version up to 5.2.
-
Enable WpfDebug capability
Enable the WpfDebug capability for all WPF elements. This capability provides attributes and dynamic actions that are useful for analyzing an issue in the element tree.
-
Ignore Attributes starting with
Reduce clutter in the list of dynamic attributes.
-
Realize Items in Virtualizing Containers
Many WPF containers only show children which are also visible on the screen; to show all child-items, set this option to true. By default, this is false, as the performance impact for large grids can be very high.
- Show All Elements
Show the complete element tree, incorporating all visual and logical WPF elements. This option disables any other filtering and is useful for analyzing the structure of WPF applications when elements cannot be accessed.
-
WPF Legacy/UIA Interaction
References:
(##) The tree strategy is used to build the tree where the root element is WPF or WPF Core based.
(**) The first tree is used for recording or tracking elements. When the user clicks track elements from this tree, they are grabbed and inserted into the solution.
(***) The second tree is used to create solutions by hand using the repository’s elements.
(###) The improved WPF tree filters out unwanted items or items that are not useful for the solution.
(####) The legacy WPF tree should be used only for customers using solutions before Ranorex version 10.0.
Tree Strategy Name (##) | Definition | Tree 1 (**) | Tree 2 (***) | WPF tree structure | WPF Core tree structure |
---|---|---|---|---|---|
WPFOnly |
Only shows the native WPF plugin tree and suppresses UIA. | WPF (legacy) (####) | Not produced | Classic (Legacy) | Improved (###) |
WPFPreferred |
Shows both WPF and UIA trees, and returns the WPF elements for tracking. | WPF (legacy) (####) | UIA | Classic (Legacy) | Improved (###) |
UIAPreferred |
Shows both UIA and WPF trees, and returns UIA elements for tracking. | UIA | WPF (legacy) (####) | Classic (Legacy) | Improved (###) |
UIAOnly |
Completely deactivates this plugin, making all other settings obsolete. This does not use the native WPF plugin. | UIA | Not produced | Classic (Legacy) | Not used for UIA |
WPFImprovedOnly (Default option) |
Only shows the improved native WPF plugin tree and suppresses UIA. | WPF | Not produced | Improved (###) | Improved (###) |
WPFImprovedPreferred (New option) |
Shows both WPF and UIA trees and returns the WPF elements for tracking. | WPF | UIA | Improved (###) | Improved (###) |
UIAPreferred_WithWPFImproved (New option) |
Shows both UIA and WPF trees and returns UIA elements for tracking. | UIA | WPF | Improved (###) | Improved (###) |
Additionally, Ranorex must be run as an Administrator under specific scenarios to work correctly:
Tree Strategy Name | Using Windows 10 | Using Windows 11 |
---|---|---|
WPFOnly |
Admin mode | Standard mode |
WPFPreferred |
Admin mode | Admin mode |
UIAPreferred |
Standard mode | Admin mode |
UIAOnly |
Standard mode | Standard mode |
WPFImprovedOnly |
Standard mode | Standard mode |
WPFImprovedPreferred |
Standard mode | Admin mode |
UIAPreferred_WithWPFImproved |
Standard mode | Admin mode |
Use a legacy serialization mechanism
A new, faster serialization mechanism is used. If you experience problems with the new one, please use the legacy serialization mechanism. Be sure to restart an AUT after changing this setting.
Enable tracing logs for the new serialization
Enable tracing logs for the new serialization mechanism. This option collects serialization logs for support analysis. The logs are collected in two files: C:\Temp\Ranorex\RanorexLogs_Server.txt and C:\Temp\Ranorex\RanorexLogs_Client.txt.
Legacy paths without ContentPresenter elements
Set this setting to True if you want to create legacy RxPaths without ContentPresenter elements. This may result in paths similar to those in versions before Ranorex Studio 10.7.6.
WPF Tree (solution setting)
-
Always Show Visual Children
Always show the visual children for specific types, even if those types also have one or more logical children. Enables accessing elements that are not part of the logical WPF element tree, like data-binding generated elements for well-known types.
For example: “CurrentType|ParentType|ApparentParentType” Each entry is a pipe (the | character) separated tuple of type-names for (current, parent, apparent-parent) elements. An empty field denotes match-all, for example, “FrameworkElement||” matches for all parent and apparent-parent elements.
-
Never Show Visual Children
Do not show the visual children for matching elements, even if those types do not have any logical children. Reduces unnecessary element tree branched.
For example: “CurrentType|ParentType|ApparentParentType” Each entry is a pipe (the | character) separated tuple of type-names for (current, parent, apparent-parent) elements. An empty field denotes match-all, for example, “FrameworkElement||” matches for all parent and apparent-parent elements.
-
Skip Elements
Neither show nor traverse elements for specific types. Reduces the size of the element tree by hiding types not used in UI testing. Example: “CurrentType|ParentType|ApparentParentType” Each entry is a pipe (the | character) separated tuple of type-names for (current, parent, apparent-parent) elements. An empty field denotes match-all, for example, “FrameworkElement||” matches for all parent and apparent-parent elements.
-
Skip Elements but Descend to Children
Reduce the hierarchy levels by always hiding redundant elements, and instead of continuing the tree with its children. By default, this skips over some common nested container constructs.
For example: “CurrentType|ParentType|ApparentParentType” Each entry is a pipe (the | character) separated tuple of type-names for (current, parent, apparent-parent) elements. An empty field denotes match-all, for example, “FrameworkElement||” matches for all parent and apparent-parent elements.
-
Skip Elements but Descend to Single Child
Reduce the hierarchy levels by hiding redundant containers, if they have none or only one child element. By default, this hides some layout-containers. Containers will be shown if they contain at least two children.
For example: “CurrentType|ParentType|ApparentParentType” Each entry is a pipe (the | character) separated tuple of type-names for (current, parent, apparent-parent) elements. An empty field denotes match-all, for example, “FrameworkElement||” matches for all parent and apparent-parent elements.