GNU/Linux >> Linux の 問題 >  >> Debian

Debian10/9/8でChromeDriverを使用してSeleniumをセットアップする方法

このチュートリアルは、Debian9およびDebian8でChromeDriverを使用してSeleniumをセットアップするのに役立ちます。このチュートリアルには、SeleniumスタンドアロンサーバーとChromeDriverを使用し、サンプルテストケースを実行するJavaプログラムの例も含まれています。

Xvfb(X仮想フレームバッファ)は、UNIXライクなオペレーティングシステム(Linuxなど)用のメモリ内ディスプレイサーバーです。ディスプレイなしでX11ディスプレイサーバープロトコルを実装します。これは、CIサービスなどのCLIアプリケーションに役立ちます。

ステップ1-前提条件

sudo特権ユーザーとしてDebianシステムにログインし、次のコマンドを実行して、システムに必要なパッケージをインストールします。

sudo apt-get update
sudo apt-get install -y curl unzip xvfb libxi6 libgconf-2-4

また、システムにJavaをインストールします。以下のコマンドを使用して、システムにOpenJDKをインストールします。DebianシステムにOracleJava8をインストールする場合は

sudo apt-get install default-jdk 

ステップ2–GoogleChromeをインストールする

次に、以下のコマンドを使用して、Debianシステムに最新のGoogleChromeをインストールします。 Google Chromeのヘッドレス機能は、自動化のための複数の扉を開きます。

sudo curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
sudo echo "deb [arch=amd64]  http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list
sudo apt-get -y update
sudo apt-get -y install google-chrome-stable

ステップ3–ChromeDriverをインストールする

ChromeDriverは、Chromium用のWebDriverのワイヤプロトコルを実装するスタンドアロンサーバーです。 WebDriverは、複数のブラウザでWebアプリを自動テストするためのオープンソースツールです。

wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip
unzip chromedriver_linux64.zip

最新のChromeDriverは、公式ダウンロードページにあります。次に、以下のコマンドを実行して、システムでChromeDriverを構成します。

sudo mv chromedriver /usr/bin/chromedriver
sudo chown root:root /usr/bin/chromedriver
sudo chmod +x /usr/bin/chromedriver

ステップ4–必要なJarファイルをダウンロードする

リモートSeleniumWebDriversを実行するには、Seleniumサーバーが必要です。以下のコマンドを使用してSeleniumスタンドアロンサーバーのjarファイルをダウンロードするか、ここにアクセスして最新バージョンのJarファイルを見つける必要があります。

wget https://selenium-release.storage.googleapis.com/3.13/selenium-server-standalone-3.13.0.jar

また、testng-6.8.7.jarファイルをシステムにダウンロードします。

wget http://www.java2s.com/Code/JarDownload/testng/testng-6.8.7.jar.zip
unzip testng-6.8.7.jar.zip
>

ステップ5–Seleniumサーバー経由でChromeを起動する

サーバーのセットアップの準備ができました。 Xvfbユーティリティを使用してスタンドアロンのSeleniumサーバーからChromeを起動します。

Seleniumサーバー経由でChromeを実行する

xvfb-run java -Dwebdriver.chrome.driver=/usr/bin/chromedriver -jar selenium-server-standalone.jar

-debugを使用します コマンドの最後にあるオプションで、サーバーをデバッグモードで起動します。

ヘッドレスChromeDriverを起動することもできます ターミナルで以下のコマンドを入力します。

chromedriver --url-base=/wd/hub

これで、SeleniumサーバーがChromeで実行されます。このサーバーを使用して、GoogleChromeWebブラウザーを使用してSeleniumで記述されたテストケースを実行します。次のステップはオプションのステップであり、ステップ5に依存しません。

ステップ6–サンプルJavaプログラム(オプション)

これはオプションの手順です。 SeleniumスタンドアロンサーバーとChromeDriverを使用して単一のテストケースを実行する方法について説明します。 SeleniumサーバーとChromeドライバーを使用してJavaプログラムを作成しましょう。このJavaプログラムは、指定されたWebサイトのURLを開き、定義された文字列がWebページに存在するかどうかを確認します。

テキストエディタでファイルを編集してJavaプログラムを作成します。

vim TecAdminSeleniumTest.java

以下のコンテンツをファイルに追加します。

Java
123456789101112131415161718192021222324252627 import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.Test; public class TecAdminSeleniumTest {public static void main(String [] args)throws IOException、InterruptedException {System.setProperty( "webdriver.chrome.driver"、 "/ usr / bin / chromedriver"); ChromeOptions chromeOptions =new ChromeOptions(); chromeOptions.addArguments( "-headless"); chromeOptions.addArguments( "-no-sandbox"); WebDriverドライバー=新しいChromeDriver(chromeOptions); driver.get( "https://google.com"); Thread.sleep(1000); if(driver.getPageSource()。contains( "I'm Feeling Lucky")){System.out.println( "Pass"); } else {System.out.println( "Fail"); } driver.quit(); }}

URL「https://google.com」を他の任意のURLに変更してから、上記のJavaプログラムで使用されている「I’mFeelingLucky」のような検索文字列も変更できます。 Javaプログラムを保存して実行します。まず、selenium-server-standalone.jarとtestng-6.8.7.jarを含むJavaCLASSPATH環境変数を設定する必要があります。次に、Javaプログラムをコンパイルして実行します。

export CLASSPATH=".:selenium-server-standalone.jar:testng-6.8.7.jar"
javac TecAdminSeleniumTest.java
java TecAdminSeleniumTest

以下のような結果が表示されます。定義された検索文字列が見つかった場合は「合格」というメッセージが表示され、ウェブページに文字列が見つからなかった場合は画面に「不合格」というメッセージが表示されます。


Debian
  1. Debian11でRsyslogサーバーをセットアップする方法

  2. Debian9/8にRabbitMQサーバーをインストールする方法

  3. Debian10/9/8にErlangをインストールする方法

  1. Debian10/9/8に開発ツールをインストールする方法

  2. BowerをDebianにインストールする方法10/9/8

  3. Debian10/9/8にZabbixエージェントをインストールする方法

  1. Debian9でVSFTPDを使用してFTPサーバーをセットアップする方法

  2. Debian10/9/8にApacheMavenをインストールする方法

  3. Debian9/8にGruntをインストールする方法