メインコンテンツまでスキップ
バージョン:23.4

Eggplant Functionalを使用したSelenium WebDriverテスト

Eggplant Functionalは、Eggplant FunctionalのWebDriverインターフェースを介して、Webアプリケーションのオブジェクトベースの自動テストをサポートしています。Eggplant Functionalを使用して純粋なWebDriverテストを実行することも、画像ベースのテスト(VNCまたはRDP接続を使用)とWebDriverテストを組み合わせてハイブリッドアプローチを達成することもできます。

Eggplant Functional内では、WebDriverを利用するための2つのオプションがあります。適切なオプションは、テストに使用するブラウザーのホスティングモデルによります:自身のITインフラストラクチャ内でブラウザーを自己ホストすることも、Sauce Labs'のブラウザー・アズ・ア・サービスプラットフォームを利用することもできます。

自己ホストのブラウザーを使用する予定の場合、このセクションの指示に従ってSeleniumのWebDriverソフトウェアをセットアップし、その後、Eggplant FunctionalのWebDriver接続を使用してブラウザーと通信する必要があります。

ブラウザープラットフォームとしてSauce Labsを利用する予定の場合、Eggplant FunctionalのSauce Labs接続を使用してブラウザーに接続する必要があります。Sauce Labs接続はハイブリッド接続であり、Eggplant Functional内でVNCとWebDriver接続の両方を単一の接続として論理的に表示します。Sauce Labs接続を作成すると、明示的なWebDriver接続を作成した場合と同じ構文を使用してWebDriverコマンドを送信することができます。Sauce Labs接続では、Seleniumソフトウェアをインストールする必要はなく、以下のSeleniumの設定に関する指示を無視することができます。

注記

Eggplant FunctionalでWebDriverおよびSauce Labs接続を作成する方法の詳細については、接続リストでのSUTの追加または編集をご覧ください。

接続(WebDriver接続であろうとSauceLabs接続であろうと)がある場合、SenseTalk WebDriverのコマンドと関数を使用してテストを作成することができます:

WindowsでのSeleniumの設定

注記

このセクションの先頭にある概要を参照して、ブラウザーへのアクセスがSauce Labs経由のみの場合、ここで説明する手順は必要ありません。

Windows 上の Selenium フレームワークで動作するように Eggplant Functional を設定するには、Selenium Grid Server、Java (JDK または JRE)、およびテスト対象のブラウザに適した WebDriver をインストールする必要があります。

システムの設定

WindowsでSeleniumとEggplant Functionalを手動で設定するには、以下の手順を完了してください:

  1. テストしたいブラウザのバージョンをダウンロードするか、既にインストールされている場合はブラウザのバージョンを確認します。

  2. スタンドアロン オプションとブラウザーを備えた Selenium Grid Server と互換性のある Java バージョン (JDK または JRE) がインストールされていることを確認します。

  3. C:ドライブのルート上の任意の場所にフォルダを作成します。

  4. SUT に Selenium Grid (Selenium Grid Server) の最新の安定バージョンをダウンロードし、新しいフォルダーに配置します。

  5. *.batファイルを作成し、それを"RunSeleniumServer.bat"のような名前にし、以下の情報を追加します:

      @echo off
    set JAVA_HOME=C:\Program Files\Java\jdk-*****\bin
    "%JAVA_HOME%\java" -jar selenium-server-^^^^^^.jar standalone

    ここで、***** は実行中の JDK のバージョン、^^^^^^ はインストールした Selenium Grid Server のバージョンです。末尾の standalone は、Selenium Grid Server のスタンドアロン オプションを示します。

  6. テストしたいブラウザに対応する適切なWebDriverをそのフォルダにダウンロードします。

  7. *.batファイルを実行してSeleniumサーバーが予想通りに起動することを確認し、Selenium設定を検証します。

  8. Eggplant Functional を使用して、Selenium 環境への WebDriver 接続 を確立できることを確認します。

Seleniumサーバーの開始と停止

Selenium Standalone Serverを起動するには(すでに実行されていない場合):

  1. コマンドプロンプトを開きます。
  2. 前のセクションで作成した.batファイルに移動します。
  3. .batファイルを実行します。

Selenium サーバーを停止するには、ctrl + c を同時に入力します。

MacでのSeleniumの設定

注記

ここで説明する手順は、Sauce Labs 経由でのみブラウザーにアクセスする予定の場合は必要ありません。詳細については、このセクションの上部にある概要を参照してください。

MacでSeleniumフレームワークを使用してEggplant Functionalを設定するには、Seleniumサーバー、Java SE Development Kit(JDK)、およびテスト対象のブラウザーに対応する適切なWebDriverをインストールする必要があります。

以下の例では、Google Chromeブラウザー用のWebDriverであるChromeDriverを使用します。

SeleniumサーバーとOracle JDKのインストール

  1.  Homebrew iOSパッケージインストーラーをインストールします:

    1. Terminalを開き、usr/bin/に移動します。
    2. 以下のコマンドを実行します:
      ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  2. 通常、JDK は Mac にすでにインストールされています。必要に応じて、Oracle から JDK をダウンロードしてインストールします。

    先端

    Homebrewを使用してJavaをインストールするには、以下のコマンドを実行します:

      brew cask install java
  3. コマンドプロンプトから、以下のコマンドを実行してSeleniumサーバーをインストールします:

      brew install Selenium-server-standalone
  4. コマンドプロンプトから、以下のコマンドを実行してSeleniumサーバーが正しくインストールされていることを確認します。

      selenium-server --version

このコマンドは、あなたがインストールしたばかりのSeleniumサーバーのバージョンを返すはずです。

Seleniumサーバーの開始と停止

コマンドプロンプトから、以下のコマンドを実行してSeleniumサーバーを起動します:

  selenium-server -port 4444
注記

Seleniumサーバーを起動するたびにこのコマンドを実行します。

ノート

Seleniumサーバーをアクティブに保ち、SenseTalkを通じてWebDriver機能を利用するためには、Terminalウィンドウを開いたままにしておく必要があります。

Seleniumサーバーを停止するには、Seleniumサーバーを起動した端末を閉じます。

ChromeDriverのインストール

Eggplant Functional との互換性を確保するには、Chrome バージョン 60 以降と ChromeDriver バージョン 2.33 以降を使用する必要があります。 WebDriver for Chrome をダウンロードし、次の手順を実行して、Selenium サーバーに次の場所を知らせます。 Chromeドライバー:

  1. コマンドウィンドウを開きます。

  2. 以下のコマンドを実行します:

      sudo nano /etc/paths
  3. パスワードを入力します。

  4. ファイルの最下部に移動し、ChromeDriverへのパスを入力します。たとえば、あなたのパスは以下のようになるかもしれません:

      /Users/<username>/Documents
  5. Ctrl+Xを押してエディタを終了します。

  6. 変更を保存するためにYを入力します。

  7. Enterを押して変更を確定します。

Safariでの自動化を有効にする

Safariブラウザで自動化を有効にするには、以下の手順を実行します:

  1. Safari > Preferencesに移動し、Advancedタブを選択します。
  2. Show Develop menu in menu barを選択します。設定を閉じます。
  3. Develop > Allow Remote Automationに移動します。
注記

SafariでのWebDriver自動化には、macOS Sierra(10.12)以降およびSafari 10.0以降が必要です。