There seems to be a issue with chromedriver 2.2 and the newest version of Chrome. This issue has to deal with the protractor not being able to send tab keys with 2.2. If I do webdriver-manager update, it does not update to the chromedriver 2.4. I did a hack where I downloaded chromedriver 2.4 exe myself and manually put it in the selenium folder, but that is not the best way to do this. How do you update protractor to use the latest version of Chromedriver 2.4?
7 Answers
I am having the same issue as you. It is related to a new release of chrome 54.
You need to wait for the next release of webdriver-manager (it was promised to be today), have look at https://github.com/angular/webdriver-manager/issues/102.
I guess in the mean time you can update your webdriver manually (the fix is already in the master branch, it was just not published yet with a version tag).
Hope I helped.
To update protractor version globally and webdriver-manager run below commands in console.
npm update protractor -g
webdriver-manager update
If still the latest protractor is not having the latest chromedriver then to update it manually follow these below steps
enter latest chromedriver version in file config.json this file is present under path '/node_modules/protractor/node_modules/webdriver-manager/built'
optional (and change 'mac32' to 'mac64' in file 'chrome_driver.js' which is present under path /webdriver-manager/built/lib/binaries)
run webdriver-manager update
in the console.
hint: To get the path of 'webdriver-manager' folder observe the console after command webdriver-manager update
Inorder to run protractor in google chrome versions greater than 57 we need Chrome driver version greater than or equal to 2.28.
With the latest version of protractor I had Chrome driver version of 2.27
Inorder to update the chromedriver to specific version I used the following commands
webdriver-manager update --versions.chrome 2.28
webdriver-manager start --versions.chrome 2.28
If it does not work after updating try to change the chrome driver version to "chromedriver": "2.28"
in the
following path
nodeJs\node_modules\protractor\node_modules\webdriver-manager\config.json
First unhid your hidden files.
Go to this path for mac user, usr/local/lib/node_modules, you should only see the protractor folder(which should have webdriver-manager already), if you see a separate folder for webdriver-manager or webdriver, move those to trash.
Now go to usr/bin, navigate to your webdriver-manager file and delete it.
Run sudo npm install -g protractor, and then start your webdriver server, last step do "sudo webdriver-manager update".
Now you should be able to invoke your browser :)