Save as and open option of Download pop up in Edge browser could not be identified in UiPath.
Starting with Chrome and Edge v117 we are seeing a new bug that affects Active Accessibility support for web pages that contain IFRAMEs or PDF documents.
This bug means that selectors for those web pages might fail.
Available Workaround:
- Start the browser with this flag added to the command line:
- --force-renderer-accessibility=complete
- Since UiPath.UIAutomation.Activities v23.8.0-preview this can be easily done from Project Settings:
- Project Settings → UI Automation Classic → Browser → Extra arguments for OpenBrowser Chrome/Edge
Notes:
- This setting applies to both the Classic OpenBrower 2 and the Modern UseBrowser.
- To ensure that this flag takes effect for Edge the Startup Boost must be disabled. This can be done from edge://settings/system or using the StartupBoostEnabled 2 Group Policy.
Code Fix:
A code fix for this issue will be included in UiPath.UIAutomation.Activities v23.10.0-preview, which is scheduled to be released next week.
This fix will remove the need to add the --force-renderer-accessibility=complete flag when starting the browser.
It is recommended to keep this flag, to avoid issues such as this in the future.
Why is the --force-renderer-accessibility=complete flag not added by default?
Enabling the support for Active Accessibility in the browser causes a slightly higher memory consumption.
To avoid this overhead the UiPath.UIAutomation.Activities enables support for Active Accessibility only when needed - e.g. when searching for browser UI elements using selectors.
However, add the --force-renderer-accessibility=complete flag force-enables support Active Accessibility, and it will help guard against issues such as this in Chrome/Edge v117 and this in Chrome/Edge v114 5.
Further info regarding this bug: This bug was caused by this Chromium change,
[A11y] Fix for longstanding hypertext errors 7
This issue is reported as a Chromium bug, and it is expected that it will be a while until this bug is fixed in Chromium.
Below is an example of a selector that is affected by this bug.
Reproduction Steps:
- Make sure that Chrome v117 is completely closed
- Open Chrome and navigate to https://www.w3schools.com/html/html_iframe.asp
- Validate the selector from above using UiExplorer
- Observe that it fails to match the target element → this is the bug
- Refresh the web page
- Validate the selector from above using UiExplorer again
- Observe that it now matches the target element.
----------------
Updates as of 06-Oct-2023
The code fix for this issue is now available in the following versions of UiPath.UIAutomation.Activities:
These patches also add the option to pass extra command-line arguments to the browser opened using the Open Browser / Use Browser activities.
This can be done by setting the appropriate environment variable:
UIPATH_EXTRA_CMD_ARGS_CHROME
UIPATH_EXTRA_CMD_ARGS_EDGE
UIPATH_EXTRA_CMD_ARGS_FIREFOX
This can be used to force-enable the Active Accessibility support in Chrome and Edge to avoid issues like the broken Chrome/Edge Active Accessibility support from versions 114 and 117.
For Chrome, this can be done by setting environment variable UIPATH_EXTRA_CMD_ARGS_
CHROME
with the value --force-renderer-accessibility=complete
.
For Edge, this can be done by setting environment variable UIPATH_EXTRA_CMD_ARGS_
EDGE
with the value --force-renderer-accessibility=complete
.
These environment variables can be set using the Set Environment Variable 2 activity.
-----------------