Known issues for TruClient protocols

This section displays the known issues when working with TruClient protocols.

Chromium browser

  • When accessing HTTP/2 web pages in Chromium, the replay log displays HTTP/1.1 in the HTTP response header.

  • The Minimum supported secure protocol setting in TruClient General Settings > Browser Settings and VuGen Runtime Settings > Load Section > Browser > SSL is not supported. TruClient Chromium always chooses the most secure protocol supported by both Chromium and the web server under test.

  • Chromium cannot record or replay inside dynamic iframes.

  • Global variable cannot be used in steps in Chromium.

    For example, this does not work:

    Step 1: Evaluate JavaScript code Global.myserver = "https://myserver.mycompany.com";

    Step 2: Navigate to Global.myserver

  • When there are multiple certificates available for use to visit a web page, Chromium can only pick up the first certificate.

  • When recording a script, the top level frame navigation event is omitted due to performance optimization. As a result, the Go Back or Go Forward step is not recorded automatically.

    Resolution: Manually add a Go Back a page or Go Forward a page step.

  • The ''Wait for File Download' step does not support the file types that are treated as dangerous by the browser. The types include but are not limited to .exe, .dll, .msi, .xml, .xsl, .js, .bat, .chm, .cmd, .jar, and .ini. The download of such files is blocked by the following prompt.

    "This type of file can harm your computer. Do you want to keep xxx anyway?"

Back to top

TruClient Browser

  • Due to changes in Mozilla technology, TruClient Browser (based on Mozilla Firefox) consumes significantly higher resources than Chromium. As a result, we recommend using the default Chromium browser instead.

  • TruClient Browser can only be used with applications that support the Mozilla Firefox browser.
  • TruClient Browser does not support Kerberos authentication. If the server also supports NTLM, TruClient automatically moves the authentication to NTLM and continues working.
  • Java applets and Silverlight are not supported for TruClient Browser. User actions on UI elements that are based on Java applets and Silverlight technologies are currently not supported for record and replay.

  • TruClient Browser is unable to record and replay actions in dynamic iframe.

    In some AUT pages, some iframes are created dynamically by user actions (for example, by clicking a button). For such iframes, the browser cannot record and replay these actions.

    Resolution: Add the EnableDynamicIframeDetection= setting to the script's default.cfg file (under the "TruClient" section) with one of the following values:

    Value Details
    0 Disables the setting.
    1 Enables the setting when the AUT document is loaded (on the window.onload event).
    2 Enables the setting when the script is loaded to the page.

    Note: Enabling dynamic iframe detection can impact the AUT page’s performance.

Back to top

Other browser issues

  • It is recommended to avoid making HTTPS connections using TLS 1.0 and TLS 1.1, because they will be disabled by the browsers in the future.
  • Due to dependency on browser vendors, TruClient's footprint might be affected by internal architectural changes to the browsers. In addition, long runs may consume more memory.

    To reduce the overall memory used, we recommend that you enable Simulate a new user for each iteration (found in General Settings > Runtime Settings > Replay).

  • If you get different results for same load test run in different browsers, see End events, run times, and transaction times on different browsers.

  • If you receive the error message: VuGen cannot open the TruClient browser, this error may have occurred because you do not have the proper permissions to establish communication between VuGen and the TruClient browser.

    Recommendation: Ask your administrator or a power user to run this command:

    netsh http add urlacl url=http://127.0.0.1:<port_given_in_the_error_message>/ user=<DOMAIN>\<USER_NAME>

    Example: netsh http add urlacl url=http://127.0.0.1:8080/ user=DOMAIN\john

  • If you receive the error message: VuGen cannot open the TruClient browser because the port range is busy or invalid, this is because a free port is needed to open a server. The server is open on the URL http://127.0.0.1:<free_port>/ .

    You can configure the free port in the following xml file:

    %APPDATA%\OpenText\<ProductName>\Data\Settings\VuGenProperties.xml

    <VuGenProperties>
    <BrowserCommunicationServerEndPort value="8090" />
    <BrowserCommunicationServerStartPort value="8080" />
    

    The default port range is between 8080 through 8090. If there is a problem with the ports (all ports are busy or the start port is bigger than the end port), you can change the range in the configuration file.

    If you are unable to resolve this issue, contact Software Support.

Back to top

Record and replay issues

You may encounter issues with the following actions when recording or replaying a script.

Mouse hover

TruClient does not record mouse hovering ("mouse over") when the element has a CSS rule of "Mouse Hover".

Resolution: Instead of mouse hovering, click the elements to open the dropdown. The clicks are recorded.

Snapshots

Recording snapshots are not available.

Security warning dialog boxes

Security warning dialog boxes are not displayed in TruClient during script development.

Clicking on an object

There are several possible reasons for replay failure when clicking on an object:

Possible Cause Try this
Scrolling to the object changes the DOM state Insert a "Scroll <object> into view" step before clicking on the object. Insert the scroll one step above clicking the object. You can also try a "Wait for Object" step before the click.
Imprecision in recording or replaying the exact location of a click on a control Click the right edge of the control, or in the exact center.
Cause unknown Replace the click step with an Evaluate JavaScript on Object step. For example: Evaluate JavaScript object.click() on button

Uploading files

If your script contains steps to upload files using a Windows Explorer dialog box, replay may fail.

In most cases, it is possible to work around this issue by using custom JavaScript or C code. Contact the Software Support site for a solution.

Dragging a slider or map

If dragging does not work correctly during replay, for example, when dragging a slider or a map, try one of the following:

  • Use one of the Alternative Steps.

  • Set the values manually until they meet your needs (for example, the precise number of pixels you would like to drag in each of the relevant directions).

  • Use the "Drag to" capability (by changing the Action of the Drag step in the Step section of the step properties). This way, you can drag your object to a relative position from another object.

JQuery sliders may need two replays to verify that the script replay succeeded. If TruClient cannot find the slider object, update the object and restart the replay. See Object identification.

Page containing videos

When you scroll past a video, TruClient may record a Play video step even if the play button of the video is not pressed when recording the step. If the Play video step causes replay problems, delete it.

Troubleshoot certificate issues

If you cannot successfully attach a client certificate, or you still experiencing certificate errors, the following steps might help you resolve attachment errors:

  1. Install the certificate in the personal store.

    Windows > Control Panel > Manage certificates

  2. Verify that the private key is exportable:

    1. Right-click the certificate file. Select Tasks > Export.
    2. In the Certificate Export Wizard, select Yes, export the private key and click Next.

For more information, see the Microsoft Windows documentation.

Note: TruClient Browser may still throw a security exception error during replay and you will need to add a security exception.

Back to top

Step arguments

You may encounter the following issues with step arguments:

  • If you add a step for the authentication dialogue, you cannot use JavaScript API for the username, password, or domain. You can only use plain or parameter values.
  • When using the Enter credential step, if you want to use dynamic values for the username, password, or domain, the step fails in most cases when using the JavaScript argument type.

    Resolution: Use the Parameter argument type instead. For details, see TruClient step arguments.

Back to top

Using non-English languages

The following issues may be related to the use of non-English languages with TruClient.

Error replaying a script saved in a non-English path

If you have saved a TruClient script in a non-English path, you might encounter errors when you try to replay the script.

Solution:

  1. Change system locale to the language that is used in the script path.

    Control Panel > Region and language > Administrative > Change system locale

  2. Set the Formats to same language as you did in step 1.

    Control Panel > Region and language > Formats > Format

  3. Restart the computer.

Generic Browser Action issue on Chinese-language computers

On Chinese-language computers, when you drag a Generic Browser Action into a new script and set the location as a parameter created with the context menu, navigation may fail. This occurs only the first time. Drag the Generic Browser Action again and create the parameter for the location again.

Back to top

TruClient Standalone and legacy scripts

You may encounter the following issues when running scripts previously developed in TruClient Standalone or in older versions of TruClient.

Note: A script cannot be edited or run in a version older than the one in which the script was developed. For example, if you participate in a beta program, you cannot use scripts created in the beta on your production installation, which has a lower version number.

Unique parameters in TruClient Standalone scripts

Scripts developed in TruClient Standalone that contain unique parameters may not run as expected.

Workaround: Create the script using TruClient in VuGen.

Script view is null after converting a legacy TruClient script to TruClient Web

The script view is populated after saving the script in interactive mode. This is by design.

Editing legacy scripts

If you edit a TruClient script using a later version of VuGen than the one on which you recorded the script, it may fail to replay in some cases.

Before modifying the script, save a backup copy of the script.

Resolution: If the replay fails, rerecord the script using the latest version of the TruClient protocol.

Back to top

Other issues

VuGen remains in Develop mode

After opening the TruClient UI by clicking Develop Script, and subsequently closing the TruClient UI, VuGen may still display the yellow banner of Develop mode.

Resolution: If working with a proxy, you must specify "bypass local connections". If working with a PAC file, the PAC must specify a direct connection for 127.0.0.1

Event handler failure

If Simulate New User is enabled in the runtime settings, an event handler is not triggered if the event happens in the last step of the Init section.

Workaround: Add another step after the last step in the Init section, such as a Wait step.

Word verification (CAPTCHA)

Web sites may use word verification fields that display text that the user must enter to verify that the user is not a machine. Such verification blocks automated usage of the page, including running automated tests.

If your script fails because of word verification failure, you must cancel this function on the Web site you are testing.

Dialog boxes opened by JavaScript code

TruClient does not support closing dialog boxes opened by user code written in an Evaluate JavaScript step, for example: window.alert(“my alert”);

Random mode in the default Run Block

In the default Run Block, you cannot set the mode to Random as you can in the VuGen user interface.

Error messages

Some error messages may not be localized.

Error: Invalid JSON string

Issue: The Vuser log shows the following error: Error -205177: SyntaxError: Invalid JSON string: Unexpected identifier parsing:xxxxxx.

Possible cause: An object such as a document or contentDocument is stored in a JavaScript step. For example:

1 var innerDoc = iframe.contentDocument

2 innerDoc = iframe.contentDocument

3 var docObject = document

4 docObject = document

Solution: Avoid saving these objects to global scope. Instead, save the object as a temporary variable.

To fix existing errors, use the following syntax:

1 let innerDoc = iframe.contentDocument

2 let innerDoc = iframe.contentDocument

3 let docObject = document

4 let docObject = document

Tips for handling timeouts, object not found, and short or long transaction response time

For troubleshooting tips on handling timeouts and instances of Object not found, short transaction response time (TRT), network timeout and long TRT, see the TruClient blogs.

Back to top

See also: