0
votes

Just cannot get it to work on my mac.

Its been working fine on my windows machine w/t any config changes and so on but I installed it on my Mac and running out of ideas how to get it to work

Node Version: 3.10.7
Protractor Version: Version 4.0.13
Browser(s): Chrome
Operating System and Version OS X El Capitan
Installed drivers: /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium
and there's chromedriver_2.25

additionally:

  • downloaded from https://chromedriver.storage.googleapis.com/index.html?path=2.26/
  • copied to: /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium still not working is there any way to set this in the conf file or something' ?

    Log:

    $ protractor conf_basic.js [18:34:22] I/hosted - Using the selenium server at http://localhost:4444/wd/hub [18:34:22] I/launcher - Running 1 instances of WebDriver [18:34:23] E/launcher - The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html [18:34:23] E/launcher - WebDriverError: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html at WebDriverError (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5) at Object.checkLegacyResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:639:15) at parseHttpResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:538:13) at client_.send.then.response (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:472:11) at ManagedPromise.invokeCallback_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1379:14) at TaskQueue.execute_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2913:14) at TaskQueue.executeNext_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2896:21)

EDIT

webdriver-manager update --versions.chrome 2.26

[07:32:45] I/update - selenium standalone: file exists /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar [07:32:45] I/update - selenium standalone: v2.53.1 up to date [07:32:45] I/update - chromedriver: file exists /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.26mac64.zip [07:32:45] I/update - chromedriver: unzipping chromedriver_2.26mac64.zip [07:32:45] I/update - chromedriver: setting permissions to 0755 for /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.26 [07:32:45] I/update - chromedriver: v2.26 up to date [07:32:47] I/update - geckodriver: file exists /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.11.1-macos.tar.gz [07:32:47] I/update - geckodriver: unzipping geckodriver-v0.11.1-macos.tar.gz [07:32:47] I/update - geckodriver: setting permissions to 0755 for /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.11.1 [07:32:47] I/update - geckodriver: vv0.11.1 up to date

to gave it even more permission i went to: /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium

and executed chmod 777 chromedriver_2.26

And I start it: webdriver-manager start --versions.chrome 2.26 as you told me to. Still no joy

[07:38:11] I/start - java -Dwebdriver.chrome.driver=/usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.26 -Dwebdriver.gecko.driver=/usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.11.1 -jar /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar -port 4444 [07:38:11] I/start - seleniumProcess.pid: 509 07:38:12.779 INFO - Launching a standalone Selenium Server 07:38:12.887 INFO - Java: Oracle Corporation 25.101-b13 07:38:12.887 INFO - OS: Mac OS X 10.11.6 x86_64 07:38:12.965 INFO - v2.53.1, with Core v2.53.1. Built from revision a36b8b1 07:38:13.106 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 MAC 07:38:13.107 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 MAC 07:38:13.107 INFO - Driver class not found: com.opera.core.systems.OperaDriver 07:38:13.107 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered 07:38:13.110 INFO - Driver class not found: org.openqa.selenium.htmlunit.HtmlUnitDriver 07:38:13.110 INFO - Driver provider org.openqa.selenium.htmlunit.HtmlUnitDriver is not registered 07:38:13.368 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub 07:38:13.368 INFO - Selenium Server is up and running

SOLUTION

  1. sudo protractor cons.js OR
  2. download chromedriver and copy it to usr/local/bin
1

1 Answers

2
votes

I'm guessing you are starting webdriver-manager to launch your selenium standalone server. What you'll need to do is run webdriver-manager update --versions.chrome 2.26. Then when starting up your selenium standalone server, you'll run webdriver-manager start --versions.chrome 2.26.