I'm in the process of rewriting the e2e tests from the angularfire-seed to use protractor instead of karma/angular-scenario and experience some unsurmountable issues. Please let me know how I can help to narrow the issue further.
After upgrading using the following statements on a mac os x 10.6.8
# npm update -g protractor
/usr/local/share/npm/bin/protractor -> /usr/local/share/npm/lib/node_modules/protractor/bin/protractor
/usr/local/share/npm/bin/webdriver-manager -> /usr/local/share/npm/lib/node_modules/protractor/bin/webdriver-manager
[email protected] /usr/local/share/npm/lib/node_modules/protractor
โโโ [email protected]
โโโ [email protected]
โโโ [email protected]
โโโ [email protected]
โโโ [email protected]
โโโ [email protected] ([email protected], [email protected])
โโโ [email protected] ([email protected], [email protected])
# webdriver-manager update
Updating selenium standalone
downloading http://selenium-release.storage.googleapis.com/2.40/selenium-server-standalone-2.40.0.jar...
Updating chromedriver
downloading https://chromedriver.storage.googleapis.com/2.9/chromedriver_mac32.zip...
chromedriver_2.9.zip downloaded to /usr/local/share/npm/lib/node_modules/protractor/selenium/chromedriver_2.9.zip
selenium-server-standalone-2.40.0.jar downloaded to /usr/local/share/npm/lib/node_modules/protractor/selenium/selenium-server-standalone-2.40.0.jar
all previously passing tests fail as follows:
# protractor test/protractor.conf.js
------------------------------------
PID: 86484 (capability: chrome #1)
------------------------------------
Starting selenium standalone server...
Selenium standalone server started at http://10.141.161.87:62864/wd/hub
FFFFFFFFF
Failures:
1) my app should automatically redirect to /home when location hash/fragment is empty
Message:
UnknownError: unknown error: unhandled inspector error: {"code":-32603,"message":"Cannot navigate to invalid URL"}
(Session info: chrome=33.0.1750.152)
(Driver info: chromedriver=2.9.248307,platform=Mac OS X 10.6.8 x86) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.19 seconds
Build info: version: '2.40.0', revision: 'fbe29a9', time: '2014-02-19 20:54:28'
System info: host: 'akrubic.local', ip: '10.141.161.87', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.6.8', java.version: '1.6.0_65'
Session ID: 205c4ba1bb21eb167b9b28ca8a858252
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{platform=MAC, acceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=/var/folders/rw/rw1quTqkG0OG+Z3EziQH+k+++TI/-Tmp-/.org.chromium.Chromium.MzgZMT}, rotatable=false, locationContextEnabled=true, version=33.0.1750.152, takesHeapSnapshot=true, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=true, browserConnectionEnabled=false, nativeEvents=true, webStorageEnabled=true, applicationCacheEnabled=false, takesScreenshot=true}]
Stacktrace:
Error:
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:4:3)
at Object.<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:1:63)
at require (module.js:380:17)
at /usr/local/share/npm/lib/node_modules/protractor/lib/runner.js:71:12
At async task:
UnknownError: unknown error: unhandled inspector error: {"code":-32603,"message":"Cannot navigate to invalid URL"}
(Session info: chrome=33.0.1750.152)
(Driver info: chromedriver=2.9.248307,platform=Mac OS X 10.6.8 x86) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.19 seconds
Build info: version: '2.40.0', revision: 'fbe29a9', time: '2014-02-19 20:54:28'
System info: host: 'akrubic.local', ip: '10.141.161.87', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.6.8', java.version: '1.6.0_65'
Session ID: 205c4ba1bb21eb167b9b28ca8a858252
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{platform=MAC, acceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=/var/folders/rw/rw1quTqkG0OG+Z3EziQH+k+++TI/-Tmp-/.org.chromium.Chromium.MzgZMT}, rotatable=false, locationContextEnabled=true, version=33.0.1750.152, takesHeapSnapshot=true, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=true, browserConnectionEnabled=false, nativeEvents=true, webStorageEnabled=true, applicationCacheEnabled=false, takesScreenshot=true}]
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
WebDriver.navigate().to(app/index.html)
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
asynchronous test function
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
2) my app should automatically redirect to /home when location hash/fragment is empty
Message:
Error: Error while waiting for Protractor to sync with the page: {}
Stacktrace:
Error:
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:9:3)
at Object.<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:1:63)
at require (module.js:380:17)
at /usr/local/share/npm/lib/node_modules/protractor/lib/runner.js:71:12
At async task:
Error: Error while waiting for Protractor to sync with the page: {}
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
WebDriver.executeScript()
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
asynchronous test function
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
....
30) my app login should log in with valid fields
Message:
Error: Error while waiting for Protractor to sync with the page: {}
Stacktrace:
Error:
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:140:5)
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:94:3)
at Object.<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:1:63)
at require (module.js:380:17)
at /usr/local/share/npm/lib/node_modules/protractor/lib/runner.js:71:12
At async task:
Error: Error while waiting for Protractor to sync with the page: {}
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
WebDriver.executeScript()
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
asynchronous test function
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
31) my app login should log in with valid fields
Message:
UnknownError: javascript error: angular is not defined
JavaScript stack:
ReferenceError: angular is not defined
at eval (eval at executeAsyncScript (unknown source), <anonymous>:8:27)
at eval (eval at executeAsyncScript (unknown source), <anonymous>:12:10)
at eval (eval at executeAsyncScript (unknown source), <anonymous>:12:36)
at executeAsyncScript (<anonymous>:314:26)
at <anonymous>:330:29
at callFunction (<anonymous>:222:33)
at <anonymous>:232:23
at <anonymous>:233:3
at Object.InjectedScript._evaluateOn (<anonymous>:613:39)
at Object.InjectedScript._evaluateAndWrap (<anonymous>:573:52)
(Session info: chrome=33.0.1750.152)
(Driver info: chromedriver=2.9.248307,platform=Mac OS X 10.6.8 x86) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 9 milliseconds
Build info: version: '2.40.0', revision: 'fbe29a9', time: '2014-02-19 20:54:28'
System info: host: 'akrubic.local', ip: '10.141.161.87', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.6.8', java.version: '1.6.0_65'
Session ID: d48d6d3b167a37417e5d82f75ad3f338
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{platform=MAC, acceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=/var/folders/rw/rw1quTqkG0OG+Z3EziQH+k+++TI/-Tmp-/.org.chromium.Chromium.ka6R37}, rotatable=false, locationContextEnabled=true, version=33.0.1750.152, takesHeapSnapshot=true, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=true, browserConnectionEnabled=false, nativeEvents=true, webStorageEnabled=true, applicationCacheEnabled=false, takesScreenshot=true}]
Stacktrace:
Error:
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:100:5)
at [object Object].<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:94:3)
at Object.<anonymous> (/Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:1:63)
at require (module.js:380:17)
at /usr/local/share/npm/lib/node_modules/protractor/lib/runner.js:71:12
At async task:
UnknownError: javascript error: angular is not defined
JavaScript stack:
ReferenceError: angular is not defined
at eval (eval at executeAsyncScript (unknown source), <anonymous>:8:27)
at eval (eval at executeAsyncScript (unknown source), <anonymous>:12:10)
at eval (eval at executeAsyncScript (unknown source), <anonymous>:12:36)
at executeAsyncScript (<anonymous>:314:26)
at <anonymous>:330:29
at callFunction (<anonymous>:222:33)
at <anonymous>:232:23
at <anonymous>:233:3
at Object.InjectedScript._evaluateOn (<anonymous>:613:39)
at Object.InjectedScript._evaluateAndWrap (<anonymous>:573:52)
(Session info: chrome=33.0.1750.152)
(Driver info: chromedriver=2.9.248307,platform=Mac OS X 10.6.8 x86) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 9 milliseconds
Build info: version: '2.40.0', revision: 'fbe29a9', time: '2014-02-19 20:54:28'
System info: host: 'akrubic.local', ip: '10.141.161.87', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.6.8', java.version: '1.6.0_65'
Session ID: d48d6d3b167a37417e5d82f75ad3f338
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{platform=MAC, acceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=/var/folders/rw/rw1quTqkG0OG+Z3EziQH+k+++TI/-Tmp-/.org.chromium.Chromium.ka6R37}, rotatable=false, locationContextEnabled=true, version=33.0.1750.152, takesHeapSnapshot=true, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=true, browserConnectionEnabled=false, nativeEvents=true, webStorageEnabled=true, applicationCacheEnabled=false, takesScreenshot=true}]
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
WebDriver.executeScript()
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
==== async task ====
asynchronous test function
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
at <anonymous>
Finished in 43.691 seconds
9 tests, 31 assertions, 31 failures
Shutting down selenium standalone server.
Before the upgrade the tests seemed to pass, but it failed in the results gathering phase:
# protractor test/protractor.conf.js
------------------------------------
PID: 84638 (capability: chrome #1)
------------------------------------
Starting selenium standalone server...
Selenium standalone server started at http://10.141.161.87:55907/wd/hub
Started
.........
9 specs, 0 failures
Finished in 30.43 seconds
/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1549
throw error;
^
TypeError: Object has no method 'results'
at jasmineNodeOpts.onComplete (/usr/local/share/npm/lib/node_modules/protractor/lib/runner.js:47:19)
at jasmineDone (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-console.js:79:5)
at dispatch (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1566:28)
at /usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1549:11
at QueueRunner.clearStack (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:506:9)
at QueueRunner.run (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1505:12)
at next (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1517:37)
at complete (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1703:9)
at QueueRunner.clearStack (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:506:9)
at QueueRunner.run (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1505:12)
==== async task ====
WebDriver.executeScript()
at webdriver.WebDriver.schedule (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:267:15)
at webdriver.WebDriver.executeAsyncScript (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:507:15)
at /Users/akrubic/Development/StartUpWeekend/ajsfire_statistified/test/e2e/myapp.spec.js:102:22
at /usr/local/share/npm/lib/node_modules/protractor/jasminewd/index.js:54:12
at webdriver.promise.ControlFlow.runInNewFrame_ (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1445:20)
at webdriver.promise.ControlFlow.runEventLoop_ (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1310:8)
at wrapper [as _onTimeout] (timers.js:252:14)
at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
==== async task ====
at Object.<anonymous> (/usr/local/share/npm/lib/node_modules/protractor/jasminewd/index.js:53:12)
at Object.<anonymous> (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:290:12)
at attemptAsync (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1520:12)
at QueueRunner.run (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1496:16)
at next (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:1517:37)
at callDone (/usr/local/share/npm/lib/node_modules/protractor/node_modules/minijasminenode/lib/jasmine-2.0.0.js:287:11)
at /usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1178:15
at webdriver.promise.ControlFlow.runInNewFrame_ (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1445:20)
at notify (/usr/local/share/npm/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:328:12)
[launcher] Runner Process Exited With Error Code: 8
Were these working with a previous version of Protractor, or only with the scenario runner? Could you share a failing test, not just the output?
The tests seemed to work with a previous version (see output and comment above at the very end). I believe it was version 0.19.1, but not certain.
They are just an attempt to foray into protractor based on the angularfire-seed e2e tests and may contain mistakes (see https://gist.github.com/a5sk4s/9822278)
It's hard to give you any information without a minimal problem case. Could you find a condensed issue?
Maybe, if I were more savvy with protractor - closing the issue - any other sources of support?
Hello all/Julie,
I just upgraded protractor from 0.16.x to 0.20.1 on WIN and MAC...also upgraded webdriver-manager:
webdriver-manager update after upgrading protractor
Now my tests fail...any help is much obliged
$ less config/e2e.conf.js
/*jshint node:true*/
'use strict';
var path = require('path');
var cfg = require('./project');
exports.config = {
/*
The address of a running selenium server.
Uncomment the following statement to use a srvr that is
already running.
*/
seleniumAddress: 'http://localhost:4444/wd/hub',
// Spec patterns are relative to the location of this config.
specs: [
path.join('../', cfg.path.test.e2e, '**/*.spec.js')
],
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: ['--disable-extensions']
}
},
// A base URL for your application under test. Calls to protractor.get()
// with relative paths will be prepended with this.
baseUrl: 'http://localhost:9001',
jasmineNodeOpts: {
onComplete: null,
isVerbose: false,
showColors: true,
includeStackTrace: true,
defaultTimeoutInterval: 10000
}
};
/*jshint node:true*/
/*global describe, beforeEach, it, expect*/
'use strict';
var IndexPage = require('./IndexPage');
describe('E2E: index page', function() {
var page = new IndexPage();
beforeEach(function() {
page.get();
});
describe('index', function() {
it('should display the correct title', function() {
expect(page.getTitle()).toBe('some proprietary title');
});
});
});
/*jshint node:true*/
/*global element, by, describe, it, beforeEach, by, expect*/
'use strict';
var IndexPage = require('../IndexPage');
var fs = require('fs');
var stubData = fs.readFileSync('some/stub/data', 'utf8');
stubData = JSON.parse(stubData);
describe('E2E: homepage notifications', function() {
var page = new IndexPage();
beforeEach(function() {
page.get();
});
it('should be on the page with 3 values', function() {
var elems = element.all(
by.repeater('some proprietary repeater'));
expect(elems.count()).toBe(3);
});
it('1st value should match the stub', function() {
var expected = stubData.entries[0].someJson;
var actual = element(
by.repeater('some proprietary repeater').row(0)
);
expect(actual.getText()).toBe(expected);
});
});
$ protractor config/e2e.conf.js
------------------------------------
PID: 9036 (capability: chrome #1)
------------------------------------
Using the selenium server at http://localhost:4444/wd/hub
Cannot read property 'matcherFn_' of undefined
[launcher] Runner Process Exited With Error Code: 1
The error message suggests that it's a Jasmine related issue (matcherFn is a jasmine thing). Could you check the version of minijasminenode that's being used? (e.g. using npm ls)?
for the version of ptor that works:
-PROPRIETARY-
โโโฌ [email protected]
โโโ [email protected]
for the version of ptor that breaks:
-PROPRIETARY-
โโโฌ [email protected]
โโโ [email protected]
npm update after pointing my package.json to ptor 0.20.x. Now its working. So maybe a transitive dependency issue?Remove the protractor dependency from package.json (currently with [email protected]) and run npm install protractor --save-dev (currently with [email protected])
I've just cloned the repo and I'm gettint the same error as @wayneseymour
Cannot read property 'matcherFn_' of undefined
After I execute:
npm install protractor --save-dev
I'm getting new error:
throw new Error('Could not find chromedriver at ' +
^
Error: Could not find chromedriver at /Users/lucas/Projects/personal/angular- seed/node_modules/protractor/selenium/chromedriver.exe
The funny thing is I'm running MacOS so I don't know why it tries to use .exe.
UPDATE
If I change browser to 'firefox' in protractor-conf.js I get this error:
node_modules/protractor/lib/driverProviders/local.js:61
throw new Error('there\'s no selenium server jar at the specified ' +
^
Error: there's no selenium server jar at the specified location. Do you have the correct ve
I can confirm that following @ajf- 's advice and removing the protractor dependency from package.json and running npm install protractor --save-dev does fix the above issue.
After getting the cannot read the matcherFn file error, I tried the following as suggested but still got an error (listed at bottom) :
(1) remove protractor dependency from package.json
(2) run "npm install protractor --save-dev"
I resolved it with the following:
(3) added back protractor dependency to package.json
(4) run "npm install"
Sorry I don't know npm or protractor well enough to say why but if it is helpful to others or if there is something else that I should be aware of, please share.
Error that I got after steps 1 & 2 above (I replaced full error path text with "(path)" below ):
Using ChromeDriver directly...
(path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\net\index.js:48
interfaces[key].forEach(function(ipAddress) {
^
TypeError: Cannot call method 'forEach' of null
at getAddress ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\net\index.js:48:21)
at Object.exports.getLoopbackAddress ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\net\index.js:78:10)
at (path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\remote\index.js:186:17
at (path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\goog\base.js:1243:15
at webdriver.promise.ControlFlow.runInNewFrame_ ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:1531:20)
at notify ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:354:12)
at then ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:406:7)
at Object.webdriver.promise.when ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:631:18)
at (path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\remote\index.js:172:20
at (path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\goog\base.js:1243:15
==== async task ====
WebDriver.createSession()
at Function.webdriver.WebDriver.acquireSession_ ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\webdriver.js:131:49)
at Function.webdriver.WebDriver.createSession ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\lib\webdriver\webdriver.js:111:30)
at Object.createDriver ((path)\GitHub\node_modulesprotractor\node_modules\selenium-webdriver\chrome.js:460:30)
at ChromeDriverProvider.getDriver ((path)\GitHub\node_modulesprotractor\lib\driverProviders\chrome.js:67:27)
at (path)\GitHub\node_modulesprotractor\lib\runner.js:207:35
at _fulfilled ((path)\GitHub\node_modulesprotractor\node_modules\q\q.js:797:54)
at self.promiseDispatch.done ((path)\GitHub\node_modulesprotractor\node_modules\q\q.js:826:30)
at Promise.promise.promiseDispatch ((path)\GitHub\node_modulesprotractor\node_modules\q\q.js:759:13)
at (path)\GitHub\node_modulesprotractor\node_modules\q\q.js:525:49
Please just npm install the latest version of protractor
this fix worked for me
http://hisabimbola.blogspot.ch/2015/03/fix-error-no-selenium-server-jar-found.html
Just a small side note, if you are running protractor with grunt, the selenium jar must be updated in the grunt-protractor-runner dir.
So the command is:
./node_modules/grunt-protractor-runner/node_modules/protractor/bin/webdriver-manager update
I was first updating it at: ./node_modules/protractor/ and that would only work when you run protractor from command line.
I post this because others may find it useful.
Thanks @mulld, running webdriver-manager update worked for me.
Most helpful comment
Just a small side note, if you are running protractor with grunt, the selenium jar must be updated in the grunt-protractor-runner dir.
So the command is:
I was first updating it at: ./node_modules/protractor/ and that would only work when you run protractor from command line.
I post this because others may find it useful.