既知の問題 - ターミナル・エミュレータ

このトピックでは,Terminal Emulator Add-in を使用するときの既知の問題について説明します。

Terminal Emulator Add-in のインストールとロード

OpenText HostExplorer

HostExplorer ターミナル・エミュレータまたはパッチをインストールするときには,UFT One が閉じていることを確認してください。

ターミナル・エミュレータがインストールされていない

ターミナル・エミュレータ・アドインがインストールおよびロードされていて,ターミナル・エミュレータがローカルにインストールされていない場合は,エラー・メッセージが表示されます。

次のいずれかの操作を実行できます。

  • UFT One を開くときに,アドイン・マネージャで[ターミナル エミュレータ]チェックボックスの選択を解除します。

  • エミュレータの構成設定を調整します。

    詳細については,ターミナル・エミュレータの構成設定の管理を参照してください。

Extra! エミュレータ

Extra! エミュレータのインストール後に,UFT が予期しない動作をすることがあります。

これは,インストールされた Extra! が atl.dll ファイルの古いバージョンをコンピュータにコピーして登録したために発生している可能性があります。

回避策:システム・フォルダ(WINNT\system32)で atl.dll を見つけます。バージョンは 3.0 以降である必要があります。regsvr32 ユーティリティを使用して,その dll を登録します。

先頭に戻る

エミュレータでの作業

複数のエミュレータ・セッションが開いている

複数のターミナル・エミュレータ・セッションが開いている場合,UFT One はどのセッションも認識しません。

テストまたはビジネス・コンポーネントを記録または実行しているときには,一度に接続するターミナル・エミュレータ・セッションは 1 つだけにします。

セッションの切断のステップ

実行セッション中に現在のエミュレータ・セッションを切断するステップがテストまたはビジネス・コンポーネントに含まれていて,そのステートメントの直後に TeScreen.Sync コマンドがある場合,そのテストまたはビジネス・コンポーネントの実行が応答しなくなったり,応答に長い時間を要したりすることがあります。

回避策:テストまたはビジネス・コンポーネントから Sync コマンドを削除するか,Wait ステートメントで置き換えます。詳細については,『UFT One Object Model Reference for GUI Testing』の「Utility Objects」の項を参照してください。

ビジー状態のエミュレータ・セッション

エミュレータ・セッションがビジー状態のときに,チェックポイントの挿入,新しいテストまたはビジネス・コンポーネントの作成,または既存のテストまたはビジネス・コンポーネントを開く操作を行うと,予期しない問題が発生することがあります。

回避策:これらの操作をどれか実行する前に,エミュレータ画面のステータス行でエミュレータの接続ステータスをチェックします。

記録中の Host On-Demand セッションの切断

記録中に Host On-Demand セッションとの接続を切った後,予期しない動作をすることがあります。

回避策:セッションとの接続を切る前に記録を停止します。その後,セッションとの接続を切るステップを手動で追加します。

記録中のエミュレータ・セッションの終了

UFT One が記録しているときにターミナル・エミュレータが閉じられると,予期しない動作が見られることがあります。

先頭に戻る

構成と設定

HLLAPI サポートがないか制限されているエミュレータ

HLLAPI をサポートしていないエミュレータや,テキストのみの HLLAPI 操作をサポートするように設定されたエミュレータを使用する場合には,エミュレータの設定を行った後でターミナル・エミュレータ・ウィンドウのサイズを変更しないでください。

Micro Focus Web-to-Host Java クライアント

別のウィンドウで開くように設定されている Micro Focus Web-to-Host Java クライアント・セッションのサポートを有効にするには,セッション・ウィンドウのタイトルを指定します。

[ツール]>[オプション]>[GUI テスト]タブ>[ターミナル エミュレータ]>[設定を調節]>[オブジェクトの認識設定]>[タイトル バー プレフィックスに基づいてエミュレータ ウィンドウを認識する]オプションを使用します。

別の設定に切り替えるときに,この値をクリアしなければならない場合があります。

Micro Focus Web-to-Host

ターミナル・エミュレータ設定ウィザードを使って Micro Focus Web-to-Host の画面サイズを設定する場合,[領域をマーク]オプションを使ってエミュレータ・ウィンドウの上に描画することはできません。

回避策:画面のテキスト領域位置を手動で設定します。

先頭に戻る

オブジェクトの認識

エミュレータが切断されている

UFT One Terminal Emulator Add-in は,エミュレータが接続されているときにのみ,エミュレータ・ウィンドウ・オブジェクトを識別できます。たとえば,次のステートメントを使ってエミュレータ・セッションに接続することはできません。

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

回避策:エミュレータと接続する前に実行する必要のあるステップを記録できます。それらのステップは,Terminal Emulator Add-in がロードされていないかのように記録されます。エミュレータが接続されたら,記録セッションを停止して,ターミナル・エミュレータ・オブジェクトを記録するための新しい記録セッションを開始してください。

HLLAPI のサポート

HLLAPI をサポートするエミュレータを使用している場合,記録中にエミュレータ・セッションがホストから切断されると,その後再接続されても,UFT One がエミュレータを認識しなくなります。

回避策:記録を停止し,セッションを再接続してから,記録を続行します。

Micro Focus Rumba または Rumba+ Desktop

エミュレータのインストール直後には,Micro Focus Rumba または Rumba+ Desktop セッション内の TeField オブジェクトを UFT One が認識しない場合があります。

回避策:Rumba または Rumba+ Desktop をインストールした後で,たとえインストール後の再起動が必須ではなくても,コンピュータを再起動します。

先頭に戻る

オブジェクトの記録と学習

OpenText HostExplorer エミュレータ

HostExplorer エミュレータで記録を行っているときには,エミュレータ・ウィンドウ内でのメニュー操作とツールバー操作が無効になります。

回避策:記録を停止し,必要なメニュー項目を選択するか,必要なツールバー・ボタンをクリックし,記録を続行します。

HLLAPI のサポート

HLLAPI をサポートするエミュレータを使用している場合,記録中にエミュレータ・ウィンドウを閉じると,予期しない結果が生じることがあります。

回避策:エミュレータ・ウィンドウを閉じる前に記録を停止します。

エミュレータ・アプリケーションでのツールバー・オブジェクトの記録

UFT One Terminal Emulator Add-in は,ターミナル・エミュレータ・アプリケーション内のツールバー・オブジェクトに対する記録操作はサポートしていません。

回避策:ツールバー・ボタンに対応するメニュー・コマンドについて記録します。代わりに,低レベル記録を使ってツールバーに対する操作を記録することもできます。

HostExplorer エミュレータ

HostExplorer の HLLAPI GetKey 関数にはバグがあります。その結果,UFT One がターミナル・エミュレータのキーボード・イベントをしばらく記録してから記録を停止し,キーボード・イベントに反応してエミュレータも停止する場合があります。

回避策:OpenText のカスタマ・サポートに連絡し,HLLAPI GetKey 関数の問題(数回の呼び出しの後で反応しなくなる)を修正するパッチを入手してください。

Micro Focus Web-to-Host エミュレータ

Micro Focus Web-to-Host エミュレータで記録する場合,ステップ・コードは生成されません。

回避策:ステップ・コードを手動で追加します。

Reflection Desktop 16.1

ナビゲートして学習はサポートされていません。

回避策:オブジェクト・スパイを使用して,オブジェクトを 1 つずつ学習します。

エミュレータ・アプリケーションのパスワード・フィールドのスパイ

オブジェクト・スパイまたはオブジェクト認識センターを使用してターミナル・エミュレータ・アプリケーションのパスワード・フィールドをスパイする場合,スパイされた値が非表示になりません。

IBM PCOMM 14
  • [ツール]>[オプション]>[ターミナル エミュレータ]でエミュレータとして IBM PCOMM を選択した後,64 ビットの IBM PCOMM エミュレータを使用する場合,UFT One を再起動してからエミュレータを起動する必要があります。
  • IBM PCOMM 14 で正常に記録するには,エミュレータを起動する前に,必ず UFT One を起動する必要があります。

先頭に戻る

エミュレータでのテストの実行

エミュレータの切り替え
  • あるターミナル・エミュレータを使って記録したテストまたはビジネス・コンポーネントが,別のターミナル・エミュレータでは正しく実行できない場合があります。たとえば,Rumba+ Desktop で記録したテストは IBM PCOMM では実行できません。

  • UFT One がテストまたはビジネス・コンポーネントを実行しているときに,ターミナル・エミュレータ・ウィンドウ内でオブジェクトのクリック,入力,または移動を行うと,予期しない結果が生じることがあります。

    回避策:エミュレータを使用する前に,テストまたはビジネス・コンポーネントの最後まで待つか,テストまたはビジネス・コンポーネントの実行を一時停止します。

Reflection HLL API Reflection HLL API を複数のスレッド・モードで実行すると,予期しない結果が生じることがあります。

先頭に戻る

テスト・オブジェクトとテスト・オブジェクト・メソッド

SendKey メソッド

たとえば TeWindow("TeWindow").TeScreen("screen5296").SendKey TE_RESET のように,ターミナル・エミュレータのロックを解除するために SendKey メソッドを使用しても,一部のエミュレータ(Host On-Demand など)はロック解除されない場合があります。

回避策:RESET コマンドについて送信するキーボード・イベントを指定します。

[ツール]>[オプション]>[GUI テスト]タブ>[ターミナル エミュレータ]表示枠>[設定を調節]>[実行の設定]>[キーボード イベントを使って特殊なエミュレータ キーを含むステップを実行する]>[RESET 関数のキー]オプションを使用します。

TeField オブジェクト

標準設定では,UFT One は TeField テスト・オブジェクト記述の中で attached text および protected プロパティを使用します。

フィールドの付属テキストがセッションごとに異なる場合,UFT One はセッション実行時にそのフィールドを見つけられません。

回避策:

  1. [オブジェクト リポジトリ]ウィンドウか,そのオブジェクトの[オブジェクトのプロパティ]ダイアログ・ボックスを開きます。
  2. 添付テキスト・プロパティをフィールドの説明から削除します。
  3. start rowstart columnindexなどの別のプロパティを追加して,オブジェクトを一意に識別します。

TeField オブジェクトのスマート認識定義を作成することもできます。

これにより,特定の TeField オブジェクトの添付テキスト・プロパティ値が変更された場合でも,記録されたテストまたはビジネス・コンポーネントを正常に実行できるようになります。

[ツール]>[オブジェクトの認識]>[スマート認識を有効にする]を選択し,[設定]をクリックします)。

詳細については,スマート認識を参照してください。

label TeScreen プロパティ

TeScreen オブジェクトのプログラム的記述の中で label プロパティを使用することはできません。

回避策:所定の TeWindow の中に存在できる画面は一度に 1 つだけなので,TeScreen("MicClass:=TeScreen") を使用することができます。

例:

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

current column/current row TeTextScreen プロパティ

TeTextScreen プロパティの current columncurrent row は,HLLAPI をサポートするエミュレータに対してしか使用できません。

location TeField プロパティ

TeField オブジェクトについては,location プロパティは記録されません。

回避策:代わりに index プロパティを使用します。

GetText / GetVisibleText メソッド
  • GetText メソッドを使用して PuTTY セッション画面からテキストを取得すると,出力テキストが文字化けする場合があります。

  • Window.GetVisibleText メソッドを使用して PuTTY セッション・ウィンドウからテキストを取得すると,出力テキストの各行の末尾に余分な文字が表示されることがあります。

    考えられる原因:単一テキスト・ブロック・モードでは,ABBYY OCR エンジンがセッション・ウィンドウの右側にあるスクロール・バーを誤って文字として解釈する場合があります。

    回避策: メソッドのパラメータで座標を指定することで,テキストの取得をウィンドウの内側に制限します。

先頭に戻る

チェックポイントおよび出力値

TeScreen に対するビットマップ・チェックポイント

場合によっては,TeScreen に対するビットマップ・チェックポイントが,実際のビットマップではなく期待ビットマップの中にカーソルが表示されたために(または別の理由で)失敗することがあります。

回避策:エミュレータのカーソルを,点滅速度を遅くするか,まったく点滅しないように設定します。これにより,カーソルがビットマップ内でキャプチャされない確率が下がります。

多言語エミュレータ

IBM PCOMM エミュレータが対象の場合,テストまたはビジネス・コンポーネントの記録または実行中に,UFT One がヨーロッパ言語の特殊文字を無視することがあります。

回避策:UFT One で,IBM PCOMM エミュレータ用のコード・ページを設定します。

[ツール]>[オプション]>[GUI テスト]タブ>[ターミナル エミュレータ]>[設定を調節]>[エミュレータの設定]>[コード ベージ番号(IBM PCOMM のみ)]オプションを使用します。

コード ベージ番号(IBM PCOMM のみ)]オプションを 1252 に設定してみてください。

先頭に戻る