LogicMonitor + Catchpoint: 自律型ITの新時代へ

さらに詳しく

この方法を使用すると、事前構成されたイメージを使用して Selenium Grid をインストールしたり、コンテナーに Selenium GRID を手動でインストールして、インストール中に追加の設定を構成したりすることができます。 

プロバイダーから入手できる次の事前構成済みイメージを使用して、Selenium Grid を Docker コンテナーにインストールできます。

  • SeleniumGRIDハブイメージ
    詳細については、を参照してください。 セレン/ハブ Docker ドキュメントより。
  • SeleniumGRIDノードイメージ
    詳細については、を参照してください。 セレン/ノードハブ Docker ドキュメントより。
  • スタンドアロンのChromeイメージ
    詳細については、を参照してください。 セレン/スタンドアロンクロム Docker ドキュメントより。

Kubernetes クラスターに Selenium Grid をインストールすることもできます。

デフォルトのDocker構成

Docker経由でSelenium Gridをスタンドアロンとしてセットアップする場合、以下の設定オプションを使用できます。これらのオプションは、コンテナの起動時に環境変数として設定されます。例えば、 SE_NODE_MAX_SESSIONS および SE_NODE_SESSION_TIMEOUTはDockerコンテナによってデフォルト値が与えられており、明示的に上書きする必要があります。その他の設定オプションは、 SE_OPTS 環境変数。これはデフォルト値を持たない構成オプションをすべて包含します。

 Details例:
セッションリクエストのタイムアウトこの設定は、スタンドアロンDockerコンテナの起動時に構成されます。セッションリクエストのタイムアウトは、リクエストがセッションキュー内で利用可能なノードを待機する秒数を決定します。デフォルトは300秒です。再試行はXNUMX秒ごとに行われます。セッションリクエストのタイムアウトをXNUMXに設定すると、リクエストはキュー内に無期限に残ります。
ハブおよびSessionQueueの環境変数を介してこれらの値をオーバーライドすることができます(SE_SESSION_REQUEST_TIMEOUT および SE_SESSION_RETRY_INTERVAL)。 たとえば、500秒のタイムアウトは SE_SESSION_REQUEST_TIMEOUT=500 2秒の再試行間隔は SE_SESSION_RETRY_INTERVAL=2.
このオプションは、追加オプションとして–session-request-timeoutをに渡すことで設定できます。 SE_OPTS DockerHubコンテナを起動するときの環境変数。
$ docker run -d -p 4444:4444 -e SE_OPTS='--session-request-timeout 20' selenium/standalone-chrome:4.0
最大セッションこの設定は、スタンドアロンDockerコンテナの起動時に行われます。最大セッション数の設定は、リクエストを処理できるブラウザセッションの数を決定します。この設定を利用可能なプロセッサ数よりも多くすると、リソース不足によりセッションが失敗する可能性があります。
ChromeとEdgeのスタンドアロンDockerコンテナの両方で、最大セッション数の設定はデフォルトで 1.
この設定を変更するには、 SE_NODE_MAX_SESSIONS スタンドアロン Docker コンテナを起動するときの環境変数。
$ docker run -d -p 4444:4444 -e SE_NODE_MAX_SESSIONS=4 selenium/standalone-edge:4.0
ノードセッションタイムアウトこの設定は、テスト要求によってセッション スロットが取得された後、スロットが解放されるまでにセッションがアクティビティなしでアイドル状態を維持できる時間を制御します。
ChromeとEdgeのスタンドアロンDockerコンテナの両方で、この設定はデフォルトで 300 秒です。
デフォルトを上書きするには、 SE_NODE_SESSION_TIMEOUT Node Docker コンテナを起動するときの環境変数。
$ docker run -d -p 4444:4444 -e SE_NODE_SESSION_TIMEOUT=10 selenium/standalone-edge:4.0

DockerコンテナにSelenium Gridを手動でインストールする 

注意: 以下のコマンドで使用される値は例のみであり、説明目的に使用されます。

  1. コマンド プロンプトを開き、次のコマンドを入力して Docker ネットワークを作成します。
$ docker network create grid
  1. Selenium Hub を起動するには、次のコマンドを実行します。
$ docker run -d -p 4442-4444:4442-4444 --net grid --name selenium-hub selenium/hub:latest
  1. 環境変数を使用して Chrome ノードを起動するには、次のコマンドを実行します。
$ docker run -d --net grid --name selenium-chrome -e SE_EVENT_BUS_HOST=selenium-hub  -e SE_EVENT_BUS_PUBLISH_PORT=4442 -e SE_EVENT_BUS_SUBSCRIBE_PORT=4443 selenium/node-chrome:4.0.0
  1. エッジノードを起動するには、次のコマンドを実行します。
$ docker run -d --net grid --name selenium-edge -e SE_EVENT_BUS_HOST=selenium-hub  -e SE_EVENT_BUS_PUBLISH_PORT=4442 -e SE_EVENT_BUS_SUBSCRIBE_PORT=4443 selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0

Docker コンテナのデフォルト設定を変更する場合は、コンテナ ID を識別し、次のような開始コマンドを実行してコンテナを再起動する必要があります。

#find the container id’s (not running)
 
$ docker ps -a
 
CONTAINER ID   IMAGE                                                                         COMMAND                  CREATED       STATUS                       PORTS                                                           NAMES
 
75bca4385216   selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0-rc-1-prerelease-20210823   "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   5900/tcp                                                        selenium-edge
 
77615a7ada1c   selenium/node-chrome:4.0                                                    "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   5900/tcp                                                        selenium-chrome
 
b838fe090610   selenium/hub:4.0                                   "/opt/bin/entry_poin…"   10 days ago   Exited (255) 6 minutes ago   0.0.0.0:4442-4444->4442-4444/tcp, :::4442-4444->4442-4444/tcp   selenium-hub
 
#start the containers
 
$ docker start 75bca4385216 77615a7ada1c b838fe090610
 
75bca4385216
 
77615a7ada1c
 
b838fe090610
 
#now they’re running
 
$ docker ps
 
CONTAINER ID   IMAGE                                                                         COMMAND                  CREATED       STATUS          PORTS                                                           NAMES
 
75bca4385216   selenium/node-edge:93.0-edgedriver-93.0-grid-4.0.0-rc-1-prerelease-20210823   "/opt/bin/entry_poin…"   10 days ago   Up 14 seconds   5900/tcp                                                        selenium-edge
 
77615a7ada1c   selenium/node-chrome:4.0                                                    "/opt/bin/entry_poin…"   10 days ago   Up 13 seconds   5900/tcp                                                        selenium-chrome
 
b838fe090610   selenium/hub:4.0 "/opt/bin/entry_poin…"   10 days ago   Up 9 seconds    0.0.0.0:4442-4444->4442-4444/tcp, :::4442-4444->4442-4444/tcp   selenium-hub

14日間フルアクセス LogicMonitor プラットフォーム