埋め込みフレームワーク/ヘッドレス・ブラウザ

このトピックでは,埋め込みフレームワークで Web アプリのテストを開始する方法,またはヘッドレス・ブラウザをテストする方法について説明します。

Internet Explorer の組み込みブラウザ・コントロールで Web アプリをテストする方法の詳細については,Internet Explorer の組み込みブラウザ・コントロールを参照してください。

注意: このトピックの手順には,OpenText では提供されていない chromedriver.exe および WebView2 driver などの実行可能ファイルのインターネットからのダウンロードが含まれています。

Chrome および NW.js の公式インターネット・サイトから入手した正規の実行可能ファイルのみを使用することが推奨されます。この推奨に従わないと,システムのセキュリティ・リスクが高まる可能性があります。関連するすべてのリスクについては,お客様が責任を負い,OpenText が責任を負うことはありません。

サポートされているフレームワーク/ヘッドレス・ブラウザ

OpenText Functional Testing では,標準の GUI テスト・サポートを使用して,次のフレームワークとヘッドレス・ブラウザで開発された Web アプリをテストできます。

オプション 説明
Chromium ベースのフレームワーク
  • Chromium Embedded Framework(CEF)

    Chromium Embedded Framework のサポートは,Java CEF,CEF Sharp,および Adobe CEP に適用できます。このトピックでは,これらのすべてを CEF と総称します。

  • Electron

  • JxBrowser

  • NW.js

Chromium ベースのフレームワークをテストする前に,Web アプリへの接続を参照してください。

Microsoft Edge WebView2 Microsoft Edge WebView2 で埋め込まれた Web アプリをテストする前に,Web アプリへの接続を参照してください。
ヘッドレス・ブラウザ

Headless Chrome をテストする前に,Headless Chrome でのテストの実行の準備を参照してください。

注:Headless Chrome での記録はサポートされていません。

これらの高度なフレームワークとブラウザは,.NET Web フォーム,Web ベースの SAP,Siebel,Java などの他の Web ベースのアドインではサポートされていません。しかし,Web 2.0 ツールキットなどの Web Extensibility ベースのアドインではサポートされています。

先頭に戻る

Web アプリへの接続

Chromium ベースのフレームワークおよび Microsoft Edge WebView2 で開発された Web アプリでテストを記録または実行する前に,OpenText Functional Testing を Web アプリに接続します。

OpenText Functional Testing を Web アプリに接続するには,次の手順を実行します。

  1. Web ドライバを準備します。

    組み込みブラウザのバージョンと一致する Web ドライバがコンピュータに格納されていることを確認します。

    ブラウザ バージョン 説明
    CEF,Electron,および JxBrowser 114 以前 ChromeDriver を公式の Chrome for Developers Web サイトからダウンロードします。
    CEF,Electron,および JxBrowser 115 以降 「Chrome for Testing availability」ダッシュボードから Chrome for Testing をダウンロードします。フレームワークのバージョンと一致するバージョンが見つからない場合は,Google Chrome Labs < Chrome for Testing からダウンロードしてください。
    Microsoft Edge WebView2   Microsoft Edge WebDriver ダウンロード・ページから WebView2 ドライバをダウンロードします。
    NW.js   chromedriver.exe ファイルを含む NW.js SDK をダウンロードします。
  2. CEF,Electron,および JxBrowser の場合は,<Installdir>\bin\WebDriver ディレクトリにある chromedriver.exe ファイルを,アプリケーションと一致するバージョンに置き換えます。

    NW.js の場合は,chromedriver.exe ファイルを <Installdir>\bin\WebDriver\NW フォルダにコピーします。

    または,アプリケーションごとに異なるバージョンの ChromeDriver を使用することもできます。chromedriver.exe ファイルを別々の場所に保存し,WebUtil.AttachRemoteDebugging の呼び出しで,該当する ChromeDriver のパスを指定します。

  3. リモート・デバッグ用のポートが常に開放されるように組み込みブラウザを設定します。これを行う方法については,組み込みブラウザのドキュメントを確認してください。

    後続の手順で使用するために,ポート番号をメモします。

    Example: CEF フォルダで,コマンド・プロンプトを開き,次のコマンドを実行します。cefclient.exe --remote-debugging-port=<ポート番号>

    正式な WebView2 アプリケーションがデバッグ・ポートをリッスンする場合,環境変数 WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS を追加し,その値を --remote-debugging-port=<ポート> に設定するのが標準設定の方法です。

  4. 次のいずれかを実行して,Web アプリに接続します。

    • [オプション]ダイアログ・ボックスの[リモート接続]表示枠で,Web アプリのリモート・アドレスとリモート・デバッグ・ポート番号を追加します。この定義により,OpenText Functional Testing はアプリケーションのオブジェクトを特定できます。

      この方法を使用するには,2 番目の手順を実行する必要があります。

      詳細については,[Web]>[リモート接続]表示枠([オプション]ダイアログ・ボックス>[GUI テスト]タブ)を参照してください。

    • OpenText Functional Testing をアプリケーションに接続する場合は,次のステートメントをテストまたはコンポーネントに追加します。これらのステートメントで,リモート IP アドレス,リモート・デバッグ・ポート番号,および Web ドライバ・パスを指定します。

      Chromium ベースのフレームワーク

      WebUtil.AttachRemoteDebugging "localhost:<port>", "default", "<DriverPath>"

      Microsoft Edge WebView2

      WebUtil.AttachRemoteDebugging "localhost:<port>", "MsEdgeWebView2", "<DriverPath>"

      詳細については,Object Model Referenceの「Utility」の項の WebUtil オブジェクトを参照してください。

      アプリケーションから切断するには,次のステートメントを使用します。

      WebUtil.DetachRemoteDebugging "localhost:<port>"

    注: アプリケーションへの接続を手動で閉じた場合,OpenText Functional Testing はアプリケーション内のオブジェクトを識別できません。

  5. リモート・マシンで OpenText Functional Testing スクリプトを実行する場合は,テストを実行する前にリモート・マシンでの接続の設定に進んでください。

先頭に戻る

リモート・マシンでの接続の設定

Chromium ベースのフレームワークを使用し,リモート・マシンで OpenText Functional Testing スクリプトを実行する場合は,追加でリモート・マシンを次のように設定します。

  1. リモート・マシンのオペレーティング・システム(Mac または Windows)に応じて,インターネットから socat をダウンロードしてインストールします。

  2. socat コマンドを実行します。

    socat tcp-listen:<x>,fork tcp:localhost:<y>

    ここで,

    <x> は,OpenText Functional Testing がアクセスを試みるターゲット・マシンのポート番号です。

    <y> は,ターゲット・マシンでデバッグ用に開放されている CEF リモート・デバッグ・ポートです。

  3. ファイアウォールを無効にするか変更して,該当するポートを許可します。

これで OpenText Functional Testing が,<x> で定義したポートを介してリモート・アプリケーションと連携できるようになります。

先頭に戻る

Headless Chrome でのテストの実行の準備

Headless Chrome でテストを実行する前に,準備としていくつかの手順を実行する必要があります。

Headless Chrome でテストを実行する準備をするには,次の手順を実行します。

  1. OpenText Functional Testing とともにインストールされた ChromeDriver が,使用している Headless Chrome のバージョンと一致するかどうかを確認します。一致していない場合は,次の表を参照して正しい ChromeDriver を入手してください。

    ブラウザ 説明
    Headless Chrome 114 以前 ChromeDriver を公式の Chrome for Developers Web サイトからダウンロードします。
    Headless Chrome 115 以降

    「Chrome for Testing availability」ダッシュボードから Chrome for Testing をダウンロードします。フレームワークのバージョンと一致するバージョンが見つからない場合は,Google Chrome Labs < Chrome for Testing からダウンロードしてください。

    <Installdir>\bin\WebDriver ディレクトリにある chromedriver.exe ファイルを正しい chromedriver.exe ファイルに置き換えます。

  2. 記録と実行環境設定]ダイアログ・ボックスで,ブラウザとして[Google Headless Chrome]を選択します。

  3. AI オブジェクト認識を使用するステップを実行する場合は,テストするすべてのコントロールが表示されるように,デフォルトのブラウザ・サイズを大きくすることをお勧めします。

    ブラウザ・サイズは,--window-size パラメータ(単位:ピクセル)によって制御されます。

    ブラウザ・サイズ設定を <Installdir>\bin\mic.ini ファイルの末尾に追加します。次に例を示します。

    Copy code
    [ChromeHeadlessOption]
    --window-size=1920,1080

先頭に戻る

その他の参照項目: