Gulp量angular器:seleniumwebdriver退出状态1

我一直在使用Bangular (一个优秀的MEAN堆栈Yeoman生成器)来创build一个项目,一切都很顺利,直到我做了最近一系列的npm项目更新。 现在在我的项目上(也在他们的项目上),我在运行他们的gulp量angular器任务(过去工作正常)时出现错误。

我已经包括完整的输出作为参考,以防万一它有帮助 – 错误是下降一半(滚动代码框):

Jamess-MacBook-Pro:test jamessherry$ gulp e2e [10:05:48] Using gulpfile ~/sites/test/gulpfile.js [10:05:48] Starting 'sass'... [10:05:48] Finished 'sass' after 30 ms [10:05:48] Starting 'inject'... [10:05:48] gulp-inject 7 files into index.html. [10:05:48] gulp-inject 11 files into index.html. [10:05:48] Finished 'inject' after 80 ms [10:05:48] Starting 'watch'... [10:05:48] Finished 'watch' after 27 ms [10:05:48] Starting 'nodemon'... [10:05:48] [nodemon] 1.7.1 [10:05:48] [nodemon] to restart at any time, enter `rs` [10:05:48] [nodemon] watching: *.* [10:05:48] [nodemon] starting `node server/server.js` Express server listening on port 9000, in development mode. [10:05:49] Finished 'nodemon' after 898 ms [10:05:49] Starting 'serve'... [10:05:49] Finished 'serve' after 41 ms [10:05:49] Starting 'e2e'... [10:05:49] Finished 'e2e' after 1.51 ms GET / 200 5.859 ms - 1854 [BS] Proxying: http://localhost:9000 [BS] Access URLs: ---------------------------- Local: http://localhost:3000 ---------------------------- UI: http://localhost:3001 ---------------------------- GET / 200 3.146 ms - 1854 GET /bower_components/angular/angular.js 304 3.598 ms - - GET /bower_components/angular-route/angular-route.js 304 3.977 ms - - GET /bower_components/angular-cookies/angular-cookies.js 304 3.671 ms - - GET /styles/css/app.css 200 9.292 ms - 36 GET /bower_components/angular-resource/angular-resource.js 304 8.992 ms - - GET /bower_components/angular-sanitize/angular-sanitize.js 304 2.055 ms - - GET /bower_components/angular-animate/angular-animate.js 304 0.819 ms - - GET /bower_components/angular-socket-io/socket.js 304 1.741 ms - - GET /app.js 304 1.870 ms - - GET /views/signup/signup.js 304 1.729 ms - - GET /views/signup/signup.controller.js 304 0.322 ms - - Starting selenium standalone server... GET /views/login/login.js 304 1.931 ms - - GET /views/login/login.controller.js 304 0.487 ms - - GET /views/home/home.js 304 1.295 ms - - GET /views/home/home.controller.js 304 1.538 ms - - GET /services/socket/socket.service.js 304 1.754 ms - - GET /services/socket/socket.mock.js 304 1.707 ms - - [launcher] Running 1 instances of WebDriver GET /services/auth/auth.js 304 1.208 ms - - GET /directives/nav-bar/nav-bar.directive.js 304 1.355 ms - - GET /bower_components/angular/angular.js 304 0.298 ms - - GET /bower_components/angular-route/angular-route.js 304 0.380 ms - - GET /bower_components/angular-cookies/angular-cookies.js 304 0.545 ms - - GET /bower_components/angular-resource/angular-resource.js 304 1.083 ms - - GET /bower_components/angular-sanitize/angular-sanitize.js 304 0.757 ms - - GET /bower_components/angular-animate/angular-animate.js 304 0.287 ms - - GET /app.js 304 0.347 ms - - GET /views/signup/signup.js 304 0.246 ms - - GET /views/signup/signup.controller.js 304 0.667 ms - - GET /views/login/login.controller.js 304 0.378 ms - - GET /views/home/home.js 304 0.447 ms - - [launcher] Process exited with error code 1 /Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/async/nexttick.js:41 goog.global.setTimeout(function() { throw exception; }, 0); ^ Error: Server terminated early with status 1 at Error (native) at /Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/remote/index.js:204:18 at promise.ControlFlow.runInFrame_ (/Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:1857:20) at goog.defineClass.notify (/Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:2448:25) at promise.Promise.notify_ (/Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:564:12) at Array.forEach (native) at promise.Promise.notifyAll_ (/Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/../webdriver/promise.js:553:15) at goog.async.run.processWorkQueue (/Users/jamessherry/sites/test/node_modules/gulp-protractor/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/async/run.js:130:15) at process._tickCallback (node.js:356:9) GET /views/home/home.controller.js 304 0.508 ms - - [10:05:50] protractor exited with code 1 Jamess-MacBook-Pro:test jamessherry$ 

我不确定错误代码的含义(如'1'表示'不通过',但是这意味着什么 – 是testing失败,还是由于某种原因,驱动程序崩溃?

我很确定这是一个包装不能很好地工作的问题, 我只是希望有人能够抛弃它,或者最近可能以某种方式经历过类似的事情。

谢谢

UPDATE

在最初的调查看来,这个问题不会发生在selenium版本2.45.0。 现在,在错误发生的'吞食量angular器 – >量angular器 – > webdriver – > selenium'链中的确切位置是讨论。 我认为这将结束与自动补丁是必需的或…:/

从angular度/量angular器#2638 :

尝试通过brew cask而不是标准的.pkg来安装Java:

 brew cask install java 

protractor.conf.js添加directConnect: true

收到这个错误后

 node_modules/protractor/bin/protractor config/protractor.conf.js --specs ./e2e/spec.js [14:17:54] I/launcher - Running 1 instances of WebDriver [14:17:54] I/local - Starting selenium standalone server... [14:17:54] E/launcher - Error: Error: Server terminated early with status 1 at Error (native) at earlyTermination.catch.e (/hg/clients/ion/node_modules/protractor/node_modules/selenium-webdriver/remote/index.js:252:52) at process._tickCallback (internal/process/next_tick.js:103:7) [14:17:54] E/launcher - Process exited with error code 100 

我能够在更新后使用java 8运行我的testing

我的团队中有两个人也有同样的错误(但不pipe我是什么原因)。 我们都在运行量angular器2.5.1。 我们都在Mac上。 我们不使用吞咽,所以不是这样。 我们也不通过凉亭安装。 回到2.45.0确实解决了这个问题,所以它看起来是一个WebdriverJS错误。 一旦我有机会倒退一点,我会写一个问题(我没有看到一个公开的)。

是的,正如@caner所说的那样,在protractor.conf.js中添加directConnect directConnect: true可以解决问题。 我也添加了chromeOnly: true对同一个文件。 希望这是有帮助的。