protractor: Tests fail after upgrade to version 0.20.1
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
protractor@0.20.1 /usr/local/share/npm/lib/node_modules/protractor
├── saucelabs@0.1.1
├── q@1.0.0
├── minijasminenode@0.2.7
├── adm-zip@0.4.4
├── selenium-webdriver@2.40.0
├── optimist@0.6.1 (wordwrap@0.0.2, minimist@0.0.8)
└── glob@3.2.9 (inherits@2.0.1, minimatch@0.2.14)
# 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
About this issue
- Original URL
- State: closed
- Created 10 years ago
- Comments: 15 (4 by maintainers)
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.
this fix worked for me
http://hisabimbola.blogspot.ch/2015/03/fix-error-no-selenium-server-jar-found.html