テストを自動化するために、ヘッドレスクローム、セレンウェブドライブ、分度器をインストールしたサーバーを取得しようとしていました。これらの指示に再起動後にクロムの代わりにエッジブラウザをピックアップする
私のセットアップ私の環境:
# JDK 8
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update && sudo apt-get install openjdk-8-jdk
# Node JS
curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
sudo apt-get install -y nodejs
# NPM modules
sudo npm install protractor -g
sudo npm install chromedriver -g
# Google Chrome
echo "deb http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee -a /etc/apt/sources.list
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4
sudo apt-get -y install google-chrome-stable
sudo apt-get -y install xvfb gtk2-engines-pixbuf
sudo apt-get -y install xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable
sudo apt-get -y install imagemagick x11-apps
Xvfb -ac :99 -screen 0 1280x1024x16 &
disown $1
export DISPLAY=:99
問題は、私が最初に私の分度器のテストを実行すると、それは素晴らしい作品とテストが完全に実行することです。しかし、サーバーの再起動や何かがある場合、私はそれを再び実行することはできません。私はwebdriver-manager start
を行うだとき、これは私の出力であるため、今これは次のとおりです。
[email protected]:~$ sudo webdriver-manager start
[02:59:54] I/start - java -Djava.security.egd=file:///dev/./urandom -Dwebdriver.chrome.driver=/usr/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.29 -Dwebdriver.gecko.driver=/usr/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.16.1 -jar /usr/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.4.0.jar -port 4444
[02:59:54] I/start - seleniumProcess.pid: 2239
02:59:54.729 INFO - Selenium build info: version: '3.4.0', revision: 'unknown'
02:59:54.730 INFO - Launching a standalone Selenium Server
2017-06-07 02:59:54.758:INFO::main: Logging initialized @329ms to org.seleniumhq.jetty9.util.log.StdErrLog
02:59:54.832 INFO - Driver provider org.openqa.selenium.ie.InternetExplorerDriver registration is skipped:
registration capabilities Capabilities [{ensureCleanSession=true, browserName=internet explorer, version=, platform=WINDOWS}] does not match the current platform LINUX
02:59:54.833 INFO - Driver provider org.openqa.selenium.edge.EdgeDriver registration is skipped:
registration capabilities Capabilities [{browserName=MicrosoftEdge, version=, platform=WINDOWS}] does not match the current platform LINUX
02:59:54.833 INFO - Driver class not found: com.opera.core.systems.OperaDriver
02:59:54.833 INFO - Driver provider com.opera.core.systems.OperaDriver registration is skipped:
Unable to create new instances on this machine.
02:59:54.837 INFO - Driver class not found: com.opera.core.systems.OperaDriver
02:59:54.837 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
02:59:54.842 INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform LINUX
2017-06-07 02:59:54.892:INFO:osjs.Server:main: jetty-9.4.3.v20170317
2017-06-07 02:59:54.942:INFO:osjsh.ContextHandler:main: Started [email protected]{/,null,AVAILABLE}
2017-06-07 02:59:54.968:INFO:osjs.AbstractConnector:main: Started [email protected]{HTTP/1.1,[http/1.1]}{0.0.0.0:4444}
2017-06-07 02:59:54.969:INFO:osjs.Server:main: Started @541ms
02:59:54.969 INFO - Selenium Server is up and running
あなたが見ることができるように、それは代わりにクロムのエッジブラウザを示しています。なぜそれは元に戻っているのですか?これを永続的に保存する方法はありますか?または、私がChromeを使用する必要があることを指定するための他のコマンドを実行する必要がありますか?
IE、Edge、Safari、Operaはスキップされていることがわかりました(これは予想されます)。 webdriver managerを起動したら、http:// localhost/grid/consoleにアクセスして、表示されているものをお知らせください。 –
はい、私は明示的に私のconf内で私はクロムを使用する必要があることを述べなければなりませんでした。それが問題を解決しました。 – JackSlayer94
クールで、私のコメントを詳細な回答として修正しました。 –