既知の問題 - 埋め込みフレームワークとヘッドレス・ブラウザ
このトピックでは、UFT Oneを使用して埋め込みフレームワークおよびヘッドレス・ブラウザで Web アプリをテストする際の既知の問題を示します。
Chromium Embedded Framework (CEF) / Electron / JxBrowser / NW.js
CEF、Electron、JxBrowser、NW.js フレームワークで作業する場合、UFT One には次の既知の問題があります。
サポートされていない機能 |
CEF、Electron、JxBrowser、NW.js アプリで作業する場合、次の機能はサポートされていません。
JxBrowser では、複数のタブまたはウィンドウでのテストの実行はサポートされていません。 |
サポートされていないオブジェクトとメソッド |
CEF、Electron、JxBrowser、NW.js アプリで作業する場合、次のオブジェクトとメソッドはサポートされていません。
|
チェックポイント |
標準、ビットマップ、テキスト/テキスト領域チェックポイントのみがサポートされています。 |
記録 |
記録中に、ページが完全にロードされた後にページ移動スクリプトが表示され、直接記録を続けると、スクリプトでエラーが発生する可能性があります。 正しいスクリプトがエラーなしで記録されるようにするには、ナビゲーション・ステップが完全に記録されるまで待ってから続行してください。 ナビゲーション・ステップがまったく記録されない場合は、手動で追加してください。 |
スパイ |
Electron のみ: サイズとタイトルが同じである 2 つの Electron ウィンドウをスパイする場合は、オブジェクトのスパイや追加を行う前に、一方のウィンドウのサイズを変更してください。 これにより、UFT One は各ウィンドウを一意に識別できるようになります。 |
オブジェクトの識別 |
UFT One 15.0 以前:リンクをクリックしたり検索を実行したりするなど、クロスドメイン iFrame 内を移動した後、UFT Oneがオブジェクトを認識しようとするときに、予期しない動作をします。 |
アプリケーション内のオブジェクトの強調表示 |
UFT One の Web 2.0 アドイン・テスト・オブジェクトを含む Web Extensibility ベースのテスト・オブジェクトで作業する場合、強調表示を行っても、期待される領域が常に強調表示されるとは限りません。 |
Electron オブジェクトのみ |
UFT One は、サンドボックス・モードで実行されている場合にのみ、Electron フレームワークのアプリケーションをサポートします。 たとえば、-enable-sandbox コマンドを使用してアプリケーションを起動した場合などです。 |
CEF オブジェクトのみ |
UFT One が CEF アプリケーションのオブジェクトを認識できるようにするには、次の手順を実行します。 デフォルトでは、UFT One は、アプリケーションの Web 要素コンテナのウィンドウ・クラス名の先頭が Chrome_WidgetWin であると想定しています。 先頭が Chrome_WidgetWin でない場合は、次のようにしてください。HKEY_CURRENT_USER\Software\Mercury Interactive\QuickTest Professional\MicTest\Packages\WebPackage\Settings\CEFWindowClassPrefix レジストリ・キーの値を変更します。アプリケーションの Web 要素コンテナで使用されているウィンドウ・クラス名プレフィックスを入力します。 注意: 後方互換性を考慮して、一部のレジストリ・キーには以前の会社のブランドが意図的に使用されています。 |
ローカライズされたバージョンの UFT One |
UFT One のローカライズされたバージョンで作業する場合、CEF、Electron、または JxBrowser オブジェクトを含むアプリケーションにローカルホストを介して接続すると、エラーが発生する可能性があります。 このような場合は、代わりに 127.0.0.1 IP アドレスを使用してください。 |
プロセスの手動での終了 |
次の状況では、WebDriverHost.exe または chromedriver.exe プロセスを手動で終了しなければならない場合があります。
このような場合、CEF/Electron/JxBrowser/NW.js アプリケーションで作業するときに、予期しない動作を回避するため、これらのプロセスを手動で終了する必要があります。 ヒント:WebUtil.DetachRemoteDebugging メソッドをテストに追加して、テスト中にこれらのプロセスを終了します。アプリケーションの IP アドレスとポートを使用してメソッドを定義します。 詳細については、『UFT One Object Model Reference for GUI Testing』の「Utility」の項の WebUtil オブジェクトを参照してください。 |
Shadow DOM
Shadow DOM を使用する場合、UFT One には次の既知の問題があります。
ブラウザ |
Shadow DOM で開発されたアプリのテストは、Chrome でのみサポートされています。 |
開発モード |
Shadow DOM で開発されたアプリのテストは、Shadow DOM オープン開発モードが使用された場合にのみサポートされます。 例:
|
サポートされていないプロパティ |
次のプロパティはサポートされていません。
|
Web 2.0 |
Web 2.0 テクノロジで作成されたテスト・オブジェクトは、UFT One による Shadow DOM のサポートの対象ではありません。 |
ヘッドレス・ブラウザでのテスト
PhantomJS および Headless Chrome を使用する場合、UFT One には次の既知の問題があります。
サポートされている Chrome のバージョン | Headless Chrome は、Chrome バージョン 60 以降でのみサポートされています。 |
記録 | PhantomJS ツールキットまたは Headless Chrome での記録はサポートされていません。 |
データ駆動 | テストをデータ駆動する場合は、テスト実行の失敗を防ぐために、各反復の最後に Browser.CloseAllTabs メソッドを追加することをお勧めします。 |
サポートされていない機能 |
PhantomJS アプリを使用する場合、次の機能とオブジェクトはサポートされていません。
|
サポートされていないテスト・オブジェクトとメソッド |
Headlesss Chrome のみ: WebAgGrid および UIGrid オブジェクト PhantomJS のみ:
PhantomJS / Headless Chrome: 次のテスト・オブジェクト・メソッドとアプリケーション・オブジェクトはサポートされていません。
|
再生の種類 |
マウスの再生の種類はサポートされていません。代わりにイベントの再生の種類を使用してください。 |
テストの実行 | メンテナンス実行モードはサポートされていません。 |
その他の参照項目: