既知の問題 - 実行セッション

関連:GUI および API テスト

ローカル UFT One 実行セッション

同じマシン上の UFT One の複数のインスタンス UFT One では、同じ Windows セッションでも、異なる Windows セッションでも、同じマシン上で UFT One の複数のインスタンスから同時にテストを実行することはできません。
ローカル・マシン

UFT One テストまたはコンポーネントをローカル・マシンで実行し、アプリケーションをテストしているコンピュータでロックが発生すると、テストが失敗することがあります。

回避策:UFT One を仮想マシン(スクリーンセーバーやロック・パスワードなし)にインストールし、仮想マシンで実行セッションを開始またはスケジュールします。これにより、仮想マシンをロックせずに、ローカル・コンピュータをロックできます。

Test Batch Runner / UAC

UAC(ユーザ・アカウント制御)機能を ON に設定して Test Batch Runner を使用することはお勧めできません。

先頭に戻る

リモート UFT One 実行セッション

Citrix XenApp のサポート

Citrix XenApp で起動したアプリケーションをテストする場合は、UFT One も Citrix XenApp で起動する必要があります。

RDC / Citrix からのログオフ

リモート・デスクトップ接続(RDC)または Citrix を使用して、リモート・マシンで UFT One を実行している場合は、リモート・セッションからログオフしないことをお勧めします。

UFT One の実行中にリモート・セッションからログオフすると、次の問題が発生する可能性があります。

  • テストまたはコンポーネントの実行セッションが失敗する。

  • キーボードまたはフォーカス操作を含むステップが失敗する。

  • 静止画像キャプチャまたは画面レコーダ(実行結果)には、黒い画面が表示される。

  • ステップで実行するデバイス・レベルの再生が、(ブラウザ・イベントではなく)マウスを使ってマウス操作を実行するように設定されている場合、ステップが失敗する

ログイン・ユーザの資格情報ではないリモート・セッション資格情報の設定

あるユーザがリモート UFT One セッションを開始した後、セッションがロックまたは切断されると、UFT One オプション([ツール]>[オプション]>[一般]タブ>[実行セッション])で定義された資格情報を使用して実行が続行されます。

この資格情報に関連付けられている権限が、セッションを開始したユーザよりも少ない場合、テストの実行で権限の問題が発生する可能性があります。

この問題を考慮して、UFT One コンピュータへのログインに使用した資格情報とは別に、リモート・セッションに使用する資格情報を設定できます。このような資格情報を定義した場合、UFT One の動作は、使用している UFT One バージョンによって異なります。

15.0:接続のチェックは失敗します。この設定は保存でき、定義した資格情報が使用されます。

15.0.1:接続のチェックに、UFT One コンピュータへのログインに使用した資格情報を入力する必要があることを示すメッセージが表示されます。この設定は保存でき、定義した資格情報が使用されます。

15.0.2 以降:接続のチェックは、ユーザ名とパスワードが正しい限り、成功します。

マルチユースのリモート資格情報

同じユーザ名とパスワードでログインする複数のユーザをサポートするリモート・コンピュータで UFT One とアプリケーションを実行している場合は、リモート・コンピュータから切断しないことをお勧めします。

このような場合に切断して再接続すると新しいユーザ・セッションが開き、UFT One 実行セッションが失われる可能性があります。

接続を開いたままにして、UFT One セッションと実行結果を保持します。

Windows オペレーティング・システムの問題

UFT One をリモートで実行しているときに問題が発生した場合は、グループ・ポリシー・エディタ(GPE)Microsoft 管理コンソール(MMC)スナップインの設定を次のように変更します。

  1. UFT One コンピュータで、次の場所に移動します。[コンピュータの構成]>[管理用テンプレート]>[Windows コンポーネント]>[Windows ログオンのオプション]>[ソフトウェアの Secure Attention Sequence を無効または有効にする

  2. ソフトウェアの Secure Attention Sequence を有効にします。

  3. サービスとコンピュータの簡単操作アプリケーション]オプションを選択します。

  4. マシンを再起動します。

注意:この設定を有効にすると、アプリケーションとサーバが UFT One コンピュータにリモートでログインできるようになるため、セキュリティ・リスクが発生する可能性があります。UFT One マシンに機密情報が含まれていないこと、および機密情報へのアクセスを提供していないことを確認してください。

ALM テスト・ラボ

GUI テストを ALM テスト・ラボから実行する場合、Windows のリモートの設定で[リモートデスクトップを実行しているコンピュータからの接続を許可する]オプションを選択します([コントロール パネル]>[システム]>[リモートの設定])。

認証エラー

認証エラーが原因でテスト実行が失敗する場合:

  • ローカル・サービスで UFT One Helper Service を再起動します。

  • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System] の次のレジストリ・キーを無効にします。

    "legalnoticecaption"="<anytext>"

    "legalnoticetext"=”<anytext>"

先頭に戻る

API テストの実行

GUI テストの呼び出し

ALM に保存され、GUI テストを呼び出す API テストを実行する場合は、ソリューションが開いた状態で UFT One が開いていることを確認するか、UFT One を閉じて ALM に開くことを許可する必要があります。

UFT が開いていても、ソリューションが開いていなければテストは実行されません。

API テストの呼び出し

API テストが GUI テストによって呼び出された場合、API テスト出力パラメータから受け取った値は、GUI テストの関数で定義された変数の値として使用できません。

外部 .dll ファイル

外部 .dll への参照を手動で追加すると、UFT One ではローカルへの保存を指示するプロンプトが表示されます。特定の参照ファイルに関する設定を変更するには、参照を削除して再度手動で追加します。

共有フォルダ

共有フォルダを使用してリモート・マシン上でテストを実行すると、.NET 2.0 セキュリティ設定の調整が必要になる可能性があります。

提案:コントロール パネル]を開き、ブラウズするか検索して[管理ツール]を見つけます。[管理ツール]の一覧で、次のエントリを探します。Microsoft .NET Framework 2.0 Configuration。見つからない場合には、.NET Framework 2.0 SDK をインストールする必要があります。

構造チェックポイントの検証

期待値が SOAP フォールトで、Web サービス呼び出しによって UnsupportedMediaType ステータスが返されると、構造チェックポイントの検証が失敗します。

負荷テスト・モード

API テストを負荷テスト・モードで実行する場合、API テスト・ステップでのチェックポイント検証はサポートされません。

log4net.dll の更新

UFT One 15.0.2 以降:

以前の UFT One バージョンで作成およびビルドされた API テストを引き続き使用するには、新しいバージョンの UFT One でテストを開いてアップグレードする必要があります。

先頭に戻る

Insight テスト・オブジェクトを含むステップの実行

要件:セッションとアプリケーションがアクティブ

ステップを正常に実行するためには、コンピュータのセッションがアクティブになっており、アプリケーションが表示されている(最小化されていない)必要があります。Insight では、テストに保存されている画像を比較するために、画面のデータを使用するためです。

リモート接続

リモート・コンピュータで実行されているアプリケーションをテストするときに、最小化されたリモート・デスクトップ接続ウィンドウを使用すると、そのステップが失敗します。

回避策:リモート・コンピュータでステップを実行するときに、リモート・デスクトップ接続ではなく別のプログラム(Virtual Network Computing など)を使用してください。

表示サイズ/ズーム・レベル

Insight オブジェクトが適切に認識されるようにするには、オペレーティング・システムで定義されている表示サイズとブラウザ・ズーム・レベル(ブラウザで作業する場合)が、テストの実行時とオブジェクトの学習または記録が行われたときとで同じである必要があります。

領域の除外

Insight で除外領域を使用する場合、含まれている領域に、オブジェクトを認識するために十分な内容が含まれている必要があります。

含まれている領域の内容が十分に詳細ではない場合、UFT One によって一致すると判断される画面上のコントロールが非常に少なくまたは多くなることがあります。

回避策:次のいずれかまたは両方を行います。

親の Browser オブジェクト

親の Browser テスト・オブジェクト内で Insight オブジェクトを検索する場合、UFT One では、ブラウザ・ウィンドウ全体ではなく、選択したブラウザ・タブ内が検索されます。

デュアル・モニタ

Insight は、プライマリ・モニタのみでサポートされます。したがって、デュアル・モニタを使用する場合には、Insight テスト・オブジェクトに対して UFT の使用時に、アプリケーションがプライマリ・モニタに表示されるようにしてください。

先頭に戻る

OCR を使用するステップの実行

以下の制限は、テキストまたはテキスト領域のチェックポイント、テキスト・テスト・オブジェクト、アプリケーションからテキストを取得するメソッドなど、OCR に基づく手順に影響します。

OCR の設定と最適化

UFT One のテキスト認識を最適に設定する必要があります。次を参照:

要件:セッションとアプリケーションがアクティブ

ステップを正常に実行するためには、コンピュータのセッションがアクティブになっており、アプリケーションが表示されている(最小化されていない)必要があります。OCR では、テストに保存されているテキストを比較するために、画面のデータを使用するためです。

リモート接続

リモート・コンピュータで実行されているアプリケーションをテストするときに、最小化されたリモート・デスクトップ接続ウィンドウを使用すると、テキスト・テスト・オブジェクトを含むステップが失敗します。

回避策:リモート・コンピュータでステップを実行するときに、リモート・デスクトップ接続ではなく別のプログラム(Virtual Network Computing など)を使用してください。

パフォーマンス
  • OCR を使用するステップの実行は、プロパティ・ベースのオブジェクト認識を使用するステップの実行よりも時間がかかります。
  • テキスト・テスト・オブジェクトを含むテストを実行する場合は、パフォーマンスを向上させるために Windows のアニメーションをオフにすることをお勧めします。
不正確なテキスト認識
  • 一部のアイコンと要素は特殊文字として認識され、実行ごとに異なって認識される可能性があります。
  • 認識されたテキストを強調表示するといった操作を実行する場合、以下のケースで操作の場所が不正確になる可能性があります。 

    • テキストの前またはテキスト内に大きなスペースがある。
    • 文字幅の差が大きいフォントが使用されている。

先頭に戻る

AI 識別を使用するステップの実行

AI ベースのステップを含むテストを実行すると、次の既知の問題が発生します。

AIUtil("search").Search メソッド AIUtil("search").Search メソッドの実行時に、アプリケーションの検索コントロールによって開かれた入力ボックスが、すぐにテキストを入力できる状態になっていない場合、検索文字列の一部の文字が失われる可能性があります。
AI 変換アシスタント モバイル・アプリケーションで実行している場合、AI 変換アシスタントは、オブジェクトを探すために画面をスクロールしません。そのため、AI 変換アシスタントを使用してテストを実行する場合、現在のモバイルアプリ画面に表示されていないオブジェクトについては、AI オブジェクトの提案は提供されません。
AI ベースのテスト・スクリプト Firefox ブラウザの下部にステータス・バーがある場合、AI ベースのテスト・スクリプトは実行できません。

先頭に戻る

テストの並行実行

ParallelRunner ツールを使用してテストを並行実行するときに発生する既知の問題を次に示します。

サポートされていない機能

Edge

ParallelRunner ツールは、一度に 1 つの Edge ブラウザしか実行できません。したがって、複数のテストを同時に実行している場合、Edge で実行できるのはそのうちの 1 つだけです。

Web 2.0 ツールキット

ParallelRunner を使用する場合、すべての Web 2.0 ツールキット(ASP .NET AJAX、Dojo、Ext-JS、GWT、jQueryUI、SiebelOpenUI、YahooUI)はサポートされません。

オートメーション・オブジェクト・モデル

UFT One のオートメーション・オブジェクト・モデルは、ParallelRunner を使用するテスト実行ではサポートされません。

AI ベースの Web テスト

ParallelRunner を使用したテストの実行では、Web アプリケーションでの AI ベースのテストはサポートされていません。

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

.object メソッド

UFT One の ParallelRunner を使用して Web スクリプトを実行する場合、8 未満の documentMode で Internet Explorer が実行されていると、.object メソッドはサポートされません。

WebFile オブジェクト

WebFile オブジェクトは、並列実行ではサポートされていません。

SystemUtil.Run メソッド

SystemUtil.Run メソッドで起動したブラウザは、テストを並列実行すると予期しない結果が生じる場合があります。

代わりに、WebUtil.LaunchBrowser メソッドを使用することをお勧めします。

実行結果

Internet Explorer

ParallelRunner の実行結果を Internet Explorer で表示するには、Internet Explorer バージョン 10 以降を使用してください。

Safari

Mac マシンの Safari で開いた場合、デバイス・モニタ・グラフの実行結果にタイム・スタンプを示す赤い線が表示されません。赤い線を表示するには、別のブラウザを使用して実行結果を表示します。

デバイス・システム・モニタ

デバイス・システム・モニタは、HTML の実行結果グラフには表示されません。並列実行されるデバイス・テストのシステム・モニタ・データを表示するには、実行結果からリンクされているログ・ファイルを確認してください。

デバイス・テスト

デバイスの予約と解放

  • ParallelRunner は、Device テスト・オブジェクト、または MobileUtil.SetActiveMobileDeviceByID などの Util メソッドを使用してデータ駆動されるテストに基づいてデバイスを予約することはできません。
  • 並列テスト中に CTRL+C を押しても、デバイスは解放されません。

Insight / OCR / 強調表示

テストでの Insight オブジェクトの使用、または OCR や強調表示メカニズムの採用により、モバイル・デバイスでの並列テストが失敗する場合があります。

回避策:Insight オブジェクトまたは OCR メカニズムを使用する場合は、デバイスが重ならないように、デバイスを並列に表示するリモート・アクセス・ウィンドウを配置します。

トラブルシューティング

場合によっては、ParallelRunner を使用して実行するたびに Web テストが応答を停止します。

回避策: 

ParallelRunner がローカル IP アドレスとして使用するアドレスを変更します。

  1. コンピュータのローカル IPV4 アドレスを取得します(コマンド・ウィンドウに ipconfig と入力します)。
  2. UFT One インストール>\bin フォルダで、parallel.ini(存在する場合は parallel.custom.ini)を開きます。
  3. IP=127.0.0.1 定義をローカル IPV4 アドレスに変更してファイルを保存します。

AI ベースのテスト

 

次の既知の問題は、バージョン 15.0.1 以前の UFT One に関連しています。

  • モバイル・アプリケーションでの AI ベースのテスト

    ParallelRunner を使用した AI ベースのモバイル・テストの場合、ローカル・アドレスにプロキシ・サーバを使用しないようにマシンのプロキシを設定します。その代わりに、ローカルホスト・アドレス 127.0.0.1 をプロキシ・サーバの例外リストに追加します。

  • AI ベースのテキスト・オブジェクトを使用したオプション・ステップ

    並列テスト実行での OptionalStep.AIUtil.FindText ステップの実行は、サポートされていません。テストがこのステップを実行する場合、後続のテスト・ステップは実行されません。

    回避策:オプション・ステップで、AITextObjects ではなく、AIObjects を使用します。

    たとえば、OptionalStep.AIUtil.FindText("On").Click の代わりに、OptionalStep.AIUtil("button", "On").Click を使用します。

先頭に戻る

メンテナンス・モードでのテストの実行

プログラム的記述の使用

メンテナンス・モードでの実行時に、アプリケーションに存在しないオブジェクトに関するプログラム記述がステップに含まれている場合、メンテナンス・モードが問題を検出するまでに時間がかかることがあります。オブジェクトをポイントするオプションを使用した場合、後でメンテナンス・モードで改めて開くときに時間を要することがあります。

必須または補足プロパティを持たないオブジェクト

メンテナンス実行ウィザードがオブジェクトを見つけられず、そのオブジェクトのテスト・オブジェクト記述に必須プロパティも補足プロパティもない(つまり、Browser テスト・オブジェクトのように、その順序識別子でのみ識別される場合)状態で、オブジェクトをポイントした場合、ウィザードは問題を修正することができないため、メッセージを表示し、ポイントしたオブジェクトのテスト・オブジェクト記述が、UFT One で識別できないオブジェクトと類似していることを通知します。

回避策:このテスト・オブジェクト記述を修正するには、[オブジェクト リポジトリ]ウィンドウ(オブジェクトがローカル・リポジトリにある場合)またはオブジェクト・リポジトリ・マネージャ(オブジェクトが共有オブジェクト・リポジトリにある場合)の[アプリケーションから更新]オプションを使用します。

別のオブジェクト・クラスをポイントすることでのステップの更新

メンテナンス実行ウィザードは、アプリケーション内でオブジェクトを見つけられなかったときに、ユーザが置き換えとして別のオブジェクト・クラスをポイントした場合、そのオブジェクトとその標準設定のメソッドを使用したステップを追加することを提案します。しかし、ウィザードはそのステップにメソッド引数を挿入しません。ステップのメソッドに必須の引数があるにもかかわらず、メンテナンス実行ウィザードが提示したステップを変更せずにそのまま使用すると、そのステップは実行時に失敗します。

回避策:ステップに対して有効な引数を指定します。

XPath または CSS のプロパティの更新

メンテナンス・モードでの実行時に、UFT One は、XPath または CSS 識別子プロパティ値を持つテスト・オブジェクトをアプリケーションの新しいオブジェクトで置き換える可能性があります。

回避策:オブジェクト・リポジトリ・マネージャの[アプリケーションから更新]オプションを使用して、XPath または CSS 識別子プロパティ値を持つテスト・オブジェクトを更新してください。

関数ライブラリで使用されるオブジェクト ステップによって呼び出される関数ライブラリで使用されるオブジェクトのプロパティについては、このようなオブジェクトで問題が発生した場合、メンテナンス・モードでは解決できません。メンテナンス・モードが関数ライブラリ内のオブジェクトの問題を検出すると、テストが読み出し専用であり、メンテナンス・モードが無効化されたことを示すメッセージが表示されます。

先頭に戻る

更新実行モードでのテストの実行

Insight

更新実行モードでは、Insight テスト・オブジェクトまたはテキスト・テスト・オブジェクトは更新されません。

Insight テスト・オブジェクトまたはテキスト・テスト・オブジェクトを更新するには、オブジェクト・リポジトリでオブジェクトを開いて、[テスト オブジェクトの画像]領域にある[テスト オブジェクトの画像を変更ボタンをクリックします。

テキスト・テスト・オブジェクトの場合、アプリケーション内のテキストの識別に使用される text プロパティを手動で更新できます。テスト・オブジェクトに保存された画像は更新されないことに注意してください。

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

更新実行では、ファイルや XML などの複合型のチェックポイントと出力値のタイプの更新はサポートされません。

更新実行中、これらのチェックポイントと出力値は通常の実行セッションと同様に処理され、期待値と実際の値が異なると失敗します。

先頭に戻る

回復シナリオ

関連:GUI UFT One 15.0.2 のテストとコンポーネント

アプリケーションのクラッシュに対して回復シナリオを実行するには、次の条件を満たしている必要があります。

  • クラッシュするアプリケーションは、ウィンドウを備えた 32 ビット・アプリケーションである必要があります。
  • テストで Recovery.Activate ステップを使用して、アプリケーションがクラッシュした後の回復シナリオを明示的に確認して実行します。詳細については、『UFT One Object Model Reference for GUI Testing』の「Utility Objects」の項の「Recovery Object」を参照してください。

  • 回復操作は[キーボードまたはマウスの操作]または[アプリケーション プロセスの終了]です。

先頭に戻る