Known Issues - Google Chrome, Microsoft Edge, and Mozilla Firefox
This topic describes known issues when working with Chrome, Edge, and Firefox browsers.
Extension installation
To support OpenText Functional Testing testing, the OpenText UFT Agent must be installed and enabled in your browser. Installing OpenText Functional Testing usually handles setting up the browser extension too. However, sometimes, manual intervention is required.
This section describes installing, allowing, repairing, and removing the browser extension installation.
Manually enable the extension
You must manually enable the OpenText UFT Agent extension for Chrome / Edge in the following cases:
-
You have no Internet connection.
-
You have not enabled the automatic updates for Chrome or Edge.
For more details, see Enable the OpenText UFT Agent extension on Google Chrome and Enable the OpenText UFT Agent extension on Microsoft Edge.
Enable extension installation in your browser policy
To install the browser extension, your browser policy must allow it. To update your browser policies automatically, you can select the Set Chrome, Chromium Edge, Firefox options option during OpenText Functional Testing installation. Otherwise, you need to manually update your browser policies to allow installing the OpenText UFT Agent:
Caution: Make sure that your company's security policies permit you to make this change.
-
Add the OpenText UFT Agent Extension for Chrome to the list of allowed extensions. For details, see https://cloud.google.com/docs/chrome-enterprise/policies/?policy=ExtensionInstallAllowlist.
The extension ID is:
dajdcgfjhnjifmaamkajfmpoplhafcfb
-
Add OpenText Functional Testing to the list of applications allowed to communicate with the extension. For details, see https://cloud.google.com/docs/chrome-enterprise/policies/?policy=NativeMessagingAllowlist.
The application to add is:
com.hp.uft.nativemessaginghost
To enable this communication, you also need to enable the NativeMessagingUserLevelHosts option. For details, see https://cloud.google.com/docs/chrome-enterprise/policies/?policy=NativeMessagingUserLevelHosts.
-
Add the OpenText UFT Agent Extension for Edge to the list of allowed extensions. For details, see https://docs.microsoft.com/en-us/deployedge/microsoft-edge-policies#extensioninstallallowlist.
The extension ID is:
kjlpnmkpdjimoabgdacgpojdjbcdooig
-
Add OpenText Functional Testing to the list of applications allowed to communicate with the extension. For details, see https://docs.microsoft.com/en-us/deployedge/microsoft-edge-policies#nativemessagingallowlist.
The application to add is:
com.hp.uft.nativemessaginghost
To enable this communication, you also need to enable the NativeMessagingUserLevelHosts option. For details, see https://docs.microsoft.com/en-us/deployedge/microsoft-edge-policies#nativemessaginguserlevelhosts.
Add the OpenText UFT Agent Firefox Extension to the list of extensions to install. For details, see https://github.com/mozilla/policy-templates/blob/master/README.md#extensionsettings.
The path to add for this extension is: <Installdir>\Installations\Firefox\WebExtension.xpi
.
Issues with an installed extension
This section describes how to handle an issue the sometimes occurs on Chrome or Edge browsers when using the unpacked OpenText UFT Agent extension. This is the version of the extension that you load manually using the Load unpacked button, or the extension loaded temporarily each time OpenText Functional Testing opens a browser. For details, see Enable the OpenText UFT Agent extension on Google Chrome.
Issue: The OpenText UFT Agent extension was previously installed but is no longer displayed in the extension list.
Alternatively, you install the extension, but it is not displayed in the extension list.
Solution: Perform one of the following steps and then reload the extension:
-
If relevant, sign out of the browser user profile and then sign back in again.
-
Manually delete your browser's User Data folder, and reopen the browser.
Chrome: Delete %LOCALAPPDATA%\Google\Chrome\User Data
Edge: Delete %LOCALAPPDATA%\Microsoft\Edge\User Data
-
Create and run an automated script to delete your browser's User Data folder. Then, reopen the browser.
Manually remove the extension
You may need to manually remove unused extensions from Firefox in the following cases:
-
The Firefox extension is not removed after you uninstall OpenText Functional Testing.
-
The old extension is kept in Firefox after you upgrade OpenText Functional Testing.
ValueEdge Functional Test Design
ValueEdge Functional Test Design (FT Design) also uses the OpenText UFT Agent to test web applications. FT Design and OpenText Functional Testing each install their own version of the extension, and each program requires its version to be the only one enabled.
Before you use OpenText Functional Testing on a computer that also used FT Design, make sure the extension version enabled matches your version of OpenText Functional Testing.
General
This section contains general limitations when you work with Chrome, Edge, or Firefox:
Common issues shared by all browsers
JavaScript on your page |
Web pages that modify the browser's JavaScript functionality may cause OpenText Functional Testing to behave unexpectedly. For example, this would include a Web page that replaces the JSON object. |
Link fonts and colors |
The font and color properties for link objects contain different values in different browsers. Therefore, if you create standard checkpoints in Microsoft Internet Explorer and select the font and color properties, running these checkpoints in Chrome, Edge, and Firefox may cause the checkpoints to fail. |
Web Extensibility |
If you have a custom toolkit designed using Web Extensibility, OpenText Functional Testing cannot handle some events on browsers. |
Issues when working with Chrome
Working with multiple Chrome versions simultaneously | OpenText Functional Testing cannot record or run tests on the Chrome released version and the Chrome beta version in the same session. |
Issues when working with Firefox
Other Firefox add-ins and the Add-ons Manager |
|
User Account Control enabled |
If you are working on a computer where the UAC (User Account Control) option is set to ON, OpenText Functional Testing does not support testing on Firefox browsers that were installed (or upgraded to a new version) after you installed OpenText Functional Testing. Workaround: After installing Firefox on the environment described above, log in as an administrator and open OpenText Functional Testing. This enables OpenText Functional Testing to install files that are required for Firefox support. |
Anonymous content elements |
OpenText Functional Testing does not support anonymous content elements in non-XUL frames of Firefox. (For example, the buttons in the Firefox SSL exception page.) |
Privileged URLs |
If you are testing on a Firefox version 57 and higher, a Firefox limitation prevents you from navigating to privileged URLs. OpenText Functional Testing displays an error if your test step navigates to a privileged URL in Firefox. You can then stop, skip, or edit and retry your step. For more details, see the MDN web docs. |
Multiple browser windows |
If you open multiple Firefox windows and maximize them all, OpenText Functional Testing cannot spy on objects on any of the windows. |
Recording
This section lists known issues you may encounter when recording on Chrome, Edge, and Firefox:
Prerequisites |
Recording on Chrome, Edge, and Firefox is only possible when the page is fully loaded. |
Unsupported methods and features while recording |
|
Troubleshooting additional steps |
When recording steps, additional steps may be recorded. Workaround: Manually remove the extraneous steps after the recording session ends. |
CloseAllTabs method |
When recording on Firefox versions 57 and higher, Chrome versions 63 and higher, or Edge versions 79 and higher, steps that close the last tab of the browser, or all browser tabs in a window, are not recorded. |
If Handler option |
The If Handler option in the Web Event Recording Configuration Dialog Box works only if the handler is assigned as an attribute. For example, <A onclick = "some code"/>. The If Handler option does not work if the handler is assigned as a property. For example, aObj.onclick = function() {some code}. |
Record Coordinates |
If the Record Coordinates option is selected in the Web > Advanced pane of the Options dialog box (Tools > Options > GUI Testing tab > Web > Advanced > Record Settings section), OpenText Functional Testing does not record correct coordinates on images. Workaround: Manually add the correct coordinates for the image after recording. |
WebRange.Set method |
When recording a WebRange.Set step for the first time on a browser, OpenText Functional Testing fails to record it properly. Workaround: Try to record the step again. |
Test objects, checkpoints, methods and properties
This section lists known issues about test objects, checkpoints, object methods and properties.
Common issues shared by all browsers
Running operations on objects that load after the web page loaded |
Sometimes, when you open a browser using SystemUtil.Run or Webutil.LaunchBrowser, the page loads, but operations on the page fail. For example a WebTable.SelectCell method may fail to select the cell. Possible cause: The site continues to load data after the page is loaded, and the operation performed requires an object that is not ready. Workaround: Open the browser using the Record and Run Settings, or using SystemUtil.Run with a URL to the specific object on the page. For example:
|
Edit boxes |
The Object Spy and Checkpoint Properties dialog boxes do not retrieve the current value of edit boxes in dialog boxes. |
Search toolbar or Developer Tools pane |
|
Checkpoints |
When creating or running checkpoints on AgGrid objects, maximize your browser to avoid unexpected behavior. |
Drag and drop methods |
When recording a test on a Web page coded in languages other than HTML5, drag and drop methods can be recorded in Internet Explorer only. |
Running the WebAudio.Play and WebVideo.Play methods |
By default, Chrome, Edge, and Firefox do not enable automatically playing audio and video files. The WebAudio.Play and WebVideo.Play steps may be successfully run but actual operations are not performed. To enable running the WebAudio.Play and WebVideo.Play methods: Configure the browser to allow autoplaying of audio and video files. Try the following options or check online for the relevant browser settings:
|
Property values |
When using Chrome, Edge, or Firefox, the innertext, outertext, innerhtml and outerhtml property values may differ from other browsers. Therefore, using these values in parameters or running checkpoints that use these property values may cause the steps to fail. |
Shadow DOM |
|
Web file |
When spying on a Web file in Chrome, Edge, or Firefox, you get a fakepath for a Webfile value property. |
hwnd property |
The hwnd property is not supported when working in Chrome, Edge, or Firefox (versions 57 and higher). |
Issues when working with Chrome
Browser.Navigate |
You may encounter the following issues if you are using the latest OpenText UFT Agent extension, available in the Chrome web store or in the <Installdir>\Installations\Chrome\v3 folder: Only the default value of the Headers parameter is supported if you run the Browser.Navigate method in Chrome. How can I tell if I am using the relevant extension: Navigate to the chrome://extensions/ page and click Details on the OpenText UFT Agent extension. The Inspect views of the extension are service worker. Workaround: Uninstall the existing extension, follow the installation instructions in Manually install the extension and install the Chrome extension from <Installdir>\Installations\Chrome\v2. |
Issues when working with Firefox
Web pages loaded via HTML objects | OpenText Functional Testing cannot accurately identify web objects on Firefox web pages loaded using the data property of an HTML object. Objects on such web pages are identified as WebElement objects. |
RunScript method |
When using the RunScript method on Firefox browsers, you should deactivate the Content Security Policy before running the test:
|
Issues when working with Edge
Object Identification Center (OIC) - Highlighting objects |
Working in Edge with the sidebar enabled: If vertical tabs are displayed on the left, the object area the OIC highlights is offset. |
Browser.Close method |
If an Edge window contains one or more blank tabs, to close the browser window, we recommend using the CloseAllTabs method instead of the Browser.Close method. |
Unsupported test objects, methods, and functionalities
The following test objects, methods, and other Web-specific functionalities are not supported in Chrome, Edge, or Firefox:
Test objects |
|
Methods |
|
Functionality |
Local system monitoring |
IE Mode in Edge
This section lists known issues you may encounter when working with IE mode in Edge:
Browser.Back method |
Sometimes, the Browser.Back step may not be performed if its previous step causes a page redirection. Workaround: Add a Wait statement between the two steps. Example:
Wait 2 Browser("Advantage Shopping").Back |
Spying and Recording |
|
Dialog boxes
General
Chrome, Edge, and Firefox use different standard dialog boxes than Windows standard dialog boxes used by Microsoft Internet Explorer.
Due to the difference in standard dialog boxes, pop-up recovery scenarios that use the Click button with label recovery operation and were built for Microsoft Internet Explorer do not work for Chrome, Edge, and Firefox, and vice versa.
Alert, Confirm, and Prompt dialog boxes
You cannot spy on Alert, Confirm, and Prompt dialog boxes opened by the browser but you can record and run scripts on them.
If you create steps on such dialog boxes, use Browser.DialogExists, Browser.HandleDialog, and Browser.GetDialogText methods to automate the dialog box behavior. See the following example:
Example: The following example verifies whether a browser dialog box exists. If the dialog box does exist, it retrieves the message displayed, clicks the OK button, and closes the dialog box.
Browser("Example").Page("Buttons").WebButton("Pop up!").Click
While Browser("Example").DialogExists = false
wait 2
Wend
txt = Browser("Example").GetDialogText
If txt = "expected value" Then
Browser("Example").HandleDialog micOK
End If
The HandleDialog, GetDialogText, and DialogExists methods may have unexpected results in the following scenarios:
- If you manually open a dialog box outside of your run session
- If you manually close a dialog box during your run session
For dialog boxes of other types, such as Authentication, Security Alert, and Certificate dialog boxes, use UIA add-in or AI Object Detection in OpenText Functional Testing to handle them.
Dialog box opened from a cross-origin frame
Firefox version 69 or later: Dialog boxes triggered by elements inside cross-origin frames are not supported.
Testing applications with strict Content Security Policies (CSPs)
To test a web application, OpenText Functional Testing must communicate with the application, including JavaScript injection. However, if you are using the latest OpenText UFT Agent extension, available in the Chrome web store or in the <Installdir>\Installations\Chrome\v3 folder, some applications block this ability.
How can I tell if I am using the relevant extension: Navigate to the chrome://extensions/ page and click Details on the OpenText UFT Agent extension. The Inspect views of the extension are service worker.
If you encounter issues when testing a secure application, you can adjust your browser policy to allow the extension to communicate with your application.
Caution: Make sure that your company's security policies permit you to make the change.
To test secure applications on Chrome with an internet connection
-
In the Registry Editor, navigate to Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome.
-
Create a key named ExtensionInstallForcelist.
-
In HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist, add a new String value named 1.
-
Populate the value of 1 with the extension ID, as listed in Enable extension installation in your browser policy.
You can check that the added policy is enabled on the chrome://policy page.
To test secure applications on Chrome without an internet connection
-
Create a file named updates.xml, add the following content to the file, and save the file in the <Installdir>/Installations/Chrome/v3 path.
Copy code<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='<extension ID>'>
<updatecheck codebase='file:///<<span class="mc-variable UFT.installdir variable">Installdir</span>>/Installations/Chrome/v3/Agent.crx' version='extension version number' />
</app>
</gupdate>Note: Replace the <Installdir> and extension version number with real values.
Use the extension ID listed in Enable extension installation in your browser policy.
You can get the extension version number by checking extension you installed on the chrome://extensions page.
-
In the Registry Editor, navigate to Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome.
-
Create a key named ExtensionInstallForcelist.
-
In HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist, add a new String value named 1.
-
Populate the value of 1 with <extension ID>;file:///<Installdir>/Installations/Chrome/v3/updates.xml.
You can check that the added policy is enabled on the chrome://policy page.
See also: