node.js - Protractor 错误,意外 token )

标签 node.js protractor

我正要开始学习 Protractor 并按照那里的简单教程 http://www.protractortest.org/#/tutorial

但不幸的是,运行此命令后出现奇怪的错误 protractor conf.js

[launcher] Process exited with error code 1
   /usr/local/lib/node_modules/protractor/node_modules/q/q.js:126
       throw e;
SyntaxError: Unexpected token )
  at goog.loadModuleFromSource_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1123:19)
  at Object.goog.loadModule (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1085:46)
  at /usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1:6
  at Object.Context.closure.goog.retrieveAndExecModule_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/_base.js:135:8)
  at <anonymous>:1:6
  at Context.closure.closure.vm.createContext.CLOSURE_IMPORT_SCRIPT (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/_base.js:104:12)
  at Object.goog.importScript_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:879:9)
  at Object.goog.importModule_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:900:14)
  at Object.goog.writeScripts_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1323:16)
  at Object.goog.require (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:663:14)

Node 版本:v0.10.37

java 版本:1.8.0_66

Protractor :版本 3.0.0

jadmine : jasmine v2.3.2 jasmine-core v2.3.4

更新

已克隆存储库 https://github.com/angular/protractor

运行以下命令

./bin/webdriver-manager update --standalone

./bin/webdriver-manager start

打开新的终端标签

更改为网站目录

使用 npm start 运行网站文件夹,并且该网站已经在端口 8080 上运行

打开新的终端选项卡,仍在网站文件夹下

运行测试命令 npm test 然后 chrome 浏览器会在几秒钟内打开 并在上面显示相同的错误

最佳答案

Protractor 升级到 WebDriver 2.48.2 并发布了版本 3.0.0。此版本的 WebDriver 与 Node.js 版本 <4 不兼容。

来自 Protractor 项目中的 CHANGELOG.md:

(18e1f71) chore(webdriver): upgrade Protractor to webdriver 2.48.2

BREAKING CHANGE:
1) Users will no longer be able to use node versions < 4.
2) There are significant changes to the control flow, and tests may need to be modified to be compliant with the new control flow. See Changes

将 Protractor 降级到 2.5.1 或将 Node.js 升级到 >= v4.0.0 应该可以解决您的问题。见 here有关 Protractor v3.0.0 中重大更改的更多信息。

关于node.js - Protractor 错误,意外 token ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33818869/

相关文章:

angularjs - Protractor 测试(在 Angular 站点上使用 Selenium 和 Chrome)给出错误的 x 和 y 点

javascript - 无法使用 Protractor 运行 cucumber 测试

javascript - toEqual 通过绑定(bind)不起作用

angularjs - afterEach 在继续之前不等待完成

node.js - express.io VS express + socket.io 的效用是什么?

python - 使用child_process(node js)在后台运行python脚本

javascript - 如何从不同的主机连接到 socket.io 服务器?

javascript - Meteor:在客户端使用 FileReader 上传图像文件,在服务器上使用 Npm.require ("fs")

selenium-webdriver - 运行 Protractor E2E 测试时加载解压扩展错误

javascript - Grunt/NPM Uglify 不喜欢这个 JS 行