Known Issues - Embedded frameworks and headless browsers

This topic lists known issues when using OpenText Functional Testing to test Web apps in embedded frameworks and headless browsers.

Chromium Embedded Framework (CEF) / Electron / JxBrowser / NW.js / Microsoft Edge WebView2

OpenText Functional Testing has the following known issues when working with CEF, Electron, JxBrowser, NW.js frameworks, and Microsoft Edge WebView2 apps.

Non-supported features

The following features are not supported when working with CEF, Electron, JxBrowser, NW.js, or Microsoft Edge WebView2 apps:

  • Navigate and Learn

  • Drag and Drop

  • Active Screen

  • Web options (Tools > Options > GUI Testing tab > Web node)

  • Low-level recording

On JxBrowser, running tests on multiple tabs or windows is not supported.

Non-supported objects and methods

The following objects and methods are not supported when working with CEF, Electron, JxBrowser, NW.js, or Microsoft Edge WebView2 apps:

  • * about://* pages

  • * chrome://* pages

  • Browser dialog boxes (like Alert, Confirm, Prompt)

  • Modal or modeless dialog boxes

  • WebFile test objects

  • ViewLink test objects

  • WebAgGrid and WebUIGrid objects
  • WebXML test objects

  • Browser methods

    Note: On CEF applications, the following browser methods are not supported: 

    OpenNewTab, Close, ClearCache, DeleteCookies, CloseAllTabs, FullScreen, Maximize, Minimize, DialogExists, HandleDialog, Quit, Restore

    All other browser methods are supported only when running tests.

Checkpoints

Only standard, bitmap, and text/text area checkpoints are supported.

Recording

While recording, if a page navigation script is displayed after the page is fully loaded, and you continue to record directly, you may end up with errors in your script.

To ensure that the correct script is recorded with no errors, wait until the navigation step is fully recorded before continuing.

If your navigation step is not recorded at all, add it manually.

Spying

Electron only:

When spying on two Electron windows that have identical sizes and titles, resize one of the windows before spying and adding objects.

This enables OpenText Functional Testing to uniquely identify each window.

Highlighting objects in the application

When working with Web extensibility-based test objects, including OpenText Functional Testing's Web 2.0 Add-in test objects, highlighting does not always highlight the expected area.

Electron objects only

OpenText Functional Testing supports applications in the Electron framework only when run in sandbox mode.

For example, launch your application with the --enable-sandbox command.

CEF objects only

To enable OpenText Functional Testing to recognize objects in a CEF application:

By default, OpenText Functional Testing expects the windows class name of the application's web element container to begin with Chrome_WidgetWin.

To support cases that don't start with Chrome_WidgetWin: Modify the HKEY_CURRENT_USER\Software\Mercury Interactive\QuickTest Professional\MicTest\Packages\WebPackage\Settings\CEFWindowClassPrefix registry key value. Enter the windows class name prefix used in your application's web element container.

Note: Some registry keys intentionally include previous company branding, due to backward compatibility considerations.

Localized versions of OpenText Functional Testing

When working in localized versions of OpenText Functional Testing, connecting to an application that includes CEF, Electron, or JxBrowser objects using localhost may result in errors.

In such cases, use the 127.0.0.1 IP address instead.

Microsoft Edge WebView2 only

Microsoft Edge WebView2 does not enable automatically playing audio and video files. Therefore, when you run the WebAudio.Play and WebVideo.Play methods for the first time on a Microsoft Edge WebView2 application, these methods do not work.

Workaround: Before running the WebAudio.Play and WebVideo.Play methods, manually play the audio or video files on the application first.

Ending processes manually

You may need to end the WebDriverHost.exe, chromedriver.exe, or msedgedriver.exe processes manually in the following situations:

  • If OpenText Functional Testing was connected to an incorrect port

  • If the application was not closed correctly.

In such cases, you must end these processes manually to avoid unexpected behavior when working with the CEF / Electron / JxBrowser / NW.js / Microsoft Edge WebView2 application.

Tip: Add the WebUtil.DetachRemoteDebugging method to your test to end these processes during the test. Define the method with the application's IP address and port.

For more details, see the WebUtil object in the Utility section of the Object Model Reference for GUI Testing.

Back to top

Testing on headless browsers

OpenText Functional Testing has the following known issues when working with Headless Chrome.

Supported Chrome versions Headless Chrome is supported only in Chrome versions 60 or higher.
Recording Recording on Headless Chrome is not supported.
Data driving If you are data driving your test, we recommend adding a Browser.CloseAllTabs method to the end of each iteration to prevent failures in your test runs.

Unsupported test objects and methods when running Web tests

The following test objects and methods are not supported when running Web tests on headless browsers:

  • WebAgGrid and UIGrid objects

  • Browser.Maximize and Browser.Minimize methods

  • about://* pages

  • iFrame or cross-domain iFrame objects

  • Operations related to multiple tabs.

  • Objects created with Web 2.0 technologies (ASAP .NET AJAX, Dojo, Google Web Tools, jQueryUI, SiebelOpenUI and YahooUI)

  • Browser.ClearCache

  • Browser.DeleteCookies

  • Browser.HandleDialog

  • Browser.Home

  • Browser.IsSiblingTab

  • Browser.Object

  • Browser.Stop

  • ViewLink

  • WebFile

Unsupported methods when running steps that use AI object identification

The following methods are not supported when running steps that use AI object identification on Headless Chrome:

  • AIUtil.Context.SetBrowserScope BrowserWindow

  • AIUtil("combobox").Select is supported if OpenText Functional Testing identifies the object as a WebList, and the object's design is not based on the HTML Select element.

AI-based testing is not supported on other headless browsers.

Replay type

The Mouse replay type is not supported. Use Event replay type instead.

Running tests Maintenance Run Mode is not supported.

Back to top

See also: