Known Issues - Terminal Emulator

This topic describes the known issues when working with the Terminal Emulator Add-in.

Installing and loading the Terminal Emulator Add-in

Rocket® HostExplorer®

When installing a HostExplorer terminal emulator or patches, make sure that OpenText Functional Testing is closed.

No terminal emulator installed

An error message is displayed if the Terminal Emulator Add-in is installed and loaded, but you don't actually have a terminal emulator installed locally.

You can do one of the following:

Rocket® Extra!® X-treme emulator

You may experience unexpected behavior from OpenText Functional Testing after you install an Extra! emulator.

This happens because the Extra! installation may have copied and registered an outdated version of the atl.dll file on your computer.

Workaround: Locate the atl.dll in your system folder (WINNT\system32). Its version should be 3.0 or higher. Register it with the regsvr32 utility.

Back to top

Working with an emulator

Multiple open emulator sessions

If you have more than one terminal emulator session open, OpenText Functional Testing does not recognize either session.

While recording or running your test or business component, ensure that only one terminal emulator session is connected at a time.

Disconnect session steps

If your test or business component contains steps that disconnect the current emulator session during the run session, followed immediately by a TeScreen.Sync command, the test or business component run might stop responding or take a long time to respond.

Workaround: Remove the Sync command from the test or business component, or replace it with a Wait statement. For more details, see the Utility Objects section of the Object Model Reference for GUI Testing.

Busy emulator sessions

Inserting a checkpoint, creating a new test or business component, or opening an existing test or business component when the emulator session is busy may cause unexpected problems.

Workaround: Check the connection status of your emulator on the status line of the emulator screen before performing any of these operations.

Disconnecting from a Host On-Demand session while recording

Unexpected behavior may occur after disconnecting from a Host On-Demand session while recording.

Workaround: Stop recording before disconnecting from the session. Then, manually add a step that disconnects from the session.

Closed emulator session while recording

You may experience unexpected behavior if the terminal emulator is closed while OpenText Functional Testing is recording.

Back to top

Configuration and Settings

Emulators with limited / no HLLAPI support

When working with an emulator that does not support HLLAPI, or with an emulator that has been configured as supporting text-only HLLAPI operations, do not change the size of the terminal emulator window after configuring the emulator settings.

Rocket® OnWeb Web to Host Java client

To enable support for an OnWeb Web to Host Java client session that is configured to open in a separate window, specify the title of your session window.

Use the Tools > Options > GUI Testing tab > Terminal Emulator > Adjust Configuration > Object identification settings > Identify emulator window based on title bar prefix option.

You may need to clear this value when switching to another configuration.

Rocket® OnWeb Web to Host

When using the Terminal Emulator Configuration Wizard to configure the screen sizes of OnWeb Web to Host, you cannot use the Mark Text Area option to draw on top of the emulator window.

Workaround: Configure the text area position of the screen manually.

Back to top

Object identification

Disconnected emulator

The OpenText Functional Testing Terminal Emulator Add-in can identify emulator window objects only when the emulator is connected. For example, you cannot use the following statement to connect to an emulator session:

 TeWindow("TeWindow").WinMenu("Menu").Select "Communication;Connect"

Workaround: You can record any steps that need to be performed prior to connection with the emulator. These steps are recorded as if the Terminal Emulator Add-in is not loaded. After the emulator is connected, stop the recording session and begin a new recording session to record terminal emulator objects.

HLLAPI support

When using an emulator that supports HLLAPI, if your emulator session disconnects from the host while recording, OpenText Functional Testing no longer recognizes the emulator, even after reconnecting.

Workaround: Stop recording, reconnect the session, and continue recording.

Rocket® Rumba®+ Desktop

OpenText Functional Testing may not recognize a TeField object in a Rumba+ Desktop session immediately after installing the emulator.

Workaround: Restart your computer after installing Rumba+ Desktop, even if the installation does not request a restart.

Back to top

Recording and learning objects

Rocket® HostExplorer®
  • When recording on a HostExplorer emulator, menu and toolbar operations in the emulator window are disabled.

    Workaround: Stop recording, select the required menu item or click the required toolbar button, and continue recording.

  • HostExplorer has a bug in the HLLAPI GetKey function. As a result, OpenText Functional Testing will stop recording terminal emulator keyboard events after recording for a while, and the emulator might stop responding to keyboard events.

    Workaround: Contact OpenText customer support to get the patch that fixes the problem with the HLLAPI GetKey function (where it stops responding after several calls).

HLLAPI support

When using an emulator that supports HLLAPI, closing the emulator window while recording may cause unexpected results.

Workaround: Stop recording before closing the emulator window.

Recording toolbar objects in emulator applications

The OpenText Functional Testing Terminal Emulator Add-in does not support recording operations on toolbar objects in terminal emulator applications.

Workaround: Record on the corresponding menu command for the toolbar button. Alternatively, you can use low-level recording to record operations on toolbars.

Rocket® OnWeb Web to Host

Step code is not generated when recording on an OnWeb Web-to-Host emulator.

Workaround: Add step code manually.

Reflection Desktop 16.1

Navigate & Learn is not supported.

Workaround: Learn objects one by one, using the Object Spy.

Spying on password fields in emulator applications

When using the Object Spy or Object Identification Center to spy on password fields in terminal emulator applications, the spied values are not hidden.

IBM PCOMM 14
  • After selecting IBM PCOMM as your emulator in Tools > Options > TerminalEmulator, if you are using a 64-bit IBM PCOMM emulator, you must restart OpenText Functional Testing and then open the emulator.
  • To successfully record on IBM PCOMM 14, you must always open OpenText Functional Testing before opening the emulator.

Back to top

Running tests on emulators

Switching emulators
  • If you record a test or business component using one terminal emulator, it may not run correctly on another terminal emulator. For example, tests recorded on Rumba+ Desktop may not run on IBM PCOMM.

  • Clicking, typing, or moving objects in the terminal emulator window while OpenText Functional Testing is running a test or business component may cause unexpected results.

    Workaround: Wait until the end of the test or business component, or pause the test or business component execution before using the emulator.

Rocket® Reflection® Desktop HLLAPI You might encounter unexpected results when you run the Reflection Desktop HLLAPI in multiple threads mode.

Back to top

Test objects and test object methods

SendKey method

When using the SendKey method to unlock a terminal emulator, for example, TeWindow("TeWindow").TeScreen("screen5296").SendKey TE_RESET, some emulators (such as Host On-Demand) may not be unlocked.

Workaround: Specify the keyboard event to send for the RESET command.

Use the Tools > Options > GUI Testing tab > Terminal Emulator pane > Adjust Configuration > Run Settings > Run steps containing special emulator keys using keyboard events > Keys for RESET function option.

TeField objects

By default, OpenText Functional Testing uses the attached text and protected properties in TeField test object descriptions.

If the attached text for a field changes from session to session, OpenText Functional Testing cannot find the field during the run session.

Workaround:

  1. Open the Object Repository Window or the Object Properties Dialog Box for the object.
  2. Remove the attached text property from the field's description.
  3. Add another property (or properties) such as start row, start column, or index to uniquely identify the object.

You can also create a smart identification definition for TeField objects.

This enables your recorded test or business component to run successfully even if the attached text property value for a particular TeField object changes.

(Select Tools > Object Identification > Enable Smart Identification and click Configure.)

For details, see Smart identification.

label TeScreen property

You cannot use the label property in a programmatic description of the TeScreen object.

Workaround: Because only one screen can exist in the given TeWindow at any one time, you can use TeScreen("MicClass:=TeScreen").

For example:

TeWindow("short name:=A").TeScreen("MicClass:=TeScreen").TeField("attached text:=User", "Protected:=False").Set "33333"

current column / current row TeTextScreen properties

The TeTextScreen properties current column and current row are available only for emulators that support HLLAPI.

location TeField description property

The location property is not recorded for TeField objects.

Workaround: Use the index property instead.

TeField Color properties

If you use the TeField.Color and TeField.BackgroundColor properties, consider the following:

  • Make sure to learn and run your test using the same terminal emulator screen resolution. Color values vary when the resolution changes.

  • These properties assume light text on a dark background, as is common with terminal emulators.

GetText / GetVisibleText methods
  • When you use the GetText method to retrieve text from a PuTTY session screen, the output text may be garbled.

  • When you use the Window.GetVisibleText method to retrieve text from a PuTTY session window, an extra letter may appear at the end of each line of the output text.

    Possible cause: In the Single Text Block Mode, the ABBYY OCR engine may mistakenly interpret the scroll bar on the right side of the session window as characters.

    Workaround: Limit the text retrieval to the inside of the window by providing its coordinates in the method’s parameters.

Back to top

Checkpoints and output values

Bitmap checkpoints on TeScreens

In some cases, a bitmap checkpoint on a TeScreen may fail because the cursor shows in the expected bitmap, and not in the actual bitmap (or the other way around).

Workaround: Set the emulator cursor to a slow blink rate, or not to blink at all. This enhances the probability that the cursor is not captured in the bitmap.

Multilingual emulators

When working with the IBM PCOMM emulator, OpenText Functional Testing may ignore special European language characters while recording or running a test or business component.

Workaround: Set the code page for your IBM PCOMM emulator in OpenText Functional Testing.

Use the Tools > Options > GUI Testing tab > Terminal Emulator > Adjust Configuration > Emulator settings > Code page number (IBM PCOMM only) option.

Try setting the Code page number (IBM PCOMM only) option to 1252.

Back to top