Protractor: 在 Visual Studio 代码中调试量角器测试时出现 Cucumber 错误,但在运行模式下一切正常

创建于 2018-04-09  ·  3评论  ·  资料来源: angular/protractor

问候团队,

我在“Visual Studio 代码”中完成了 Protractor cucumber 的基本设置,当我从终端运行它时一切正常。 但是,当我通过 Visual Studio 代码调试它时,它给了我版本错误。 我还没有在全球范围内安装 Cucumber。 我通过本地目录中的 npm install 安装它,但错误消息仍然显示我保留了两个不同的版本。 怎么可能?

此错误消息也应该在运行模式下出现,为什么它只在调试模式下出现。 请看下面的错误。

**[18:34:15] I/launcher - 运行 1 个 WebDriver 实例
logger.js:158
[18:34:15] I/local - 正在启动 selenium 独立服务器...
logger.js:158
[18:34:16] I/local - Selenium 独立服务器从http://10.12.2.155 :60837/wd/hub 开始
logger.js:158
未处理的拒绝错误:
可调试性.js:868
您似乎正在执行黄瓜安装(很可能是全局安装)
这与您的本地安装(支持文件中所需的安装)不同。
为了使黄瓜工作,您需要执行支持文件中所需的相同安装。
请执行本地安装的版本来运行您的测试。
执行路径:D:\Prog Test\protractor-cucumber-master\node_modules\cucumber\lib\index.js
本地路径:d:\Prog Test\protractor-cucumber-master\node_modules\cucumber\lib\index.js

在 D:\Prog 测试\protractor-cucumber-master\node_modules\cucumbersrc\cli\install_validator.js:17:11
在 Generator.next ()
在 Generator.tryCatcher (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\util.js:16:23)
在 PromiseSpawn._promiseFulfilled (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\generators.js:97:49)
在 Promise._settlePromise (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\promise.js:574:26)
在 Promise._settlePromise0 (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\promise.js:614:10)
在 Promise._settlePromises (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\promise.js:693:18)
在 Async._drainQueue (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\async.js:133:16)
在 Async._drainQueues (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\async.js:143:10)
在 Immediate.Async.drainQueues (D:\Prog Test\protractor-cucumber-master\node_modules\bluebird\js\release\async.js:17:14)
在 runCallback (timers.js:794:20)
在 tryOnImmediate (timers.js:752:5)
在 processImmediate [as _immediateCallback] (timers.js:729:5)
[18:34:25] E/launcher - BUG:启动器退出,剩余 1 个任务
logger.js:158**

_以下是运行“npm install”后安装的 package.json 的依赖项_

`{
“开发依赖”:{
"babel-cli": "^6.26.0",
"babel-preset-es2015": "^6.24.1",
"babel-register": "^6.26.0",
"柴": "^4.1.2",
"chai-as-promised": "^7.1.1",
“黄瓜”:“^3.2.1”,
“黄瓜 html 报告”:“^0.6.2”,
"黄瓜-html-reporter": "^3.0.4",
“cucumberjs-allure-reporter”:“^1.0.3”,
"mkdirp": "^0.5.1",
"量角器": "^5.2.0",
“量角器黄瓜框架”:“^4.1.1”
},

}
`

最有用的评论

您需要在.vscode/launch.json中指定cwd $,如下所示:

"cwd": "${workspaceRoot}"

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
        "stopOnEntry": false,
        "args": [
            "${workspaceRoot}/config/config.js"
        ],
    }
]

所有3条评论

您需要在.vscode/launch.json中指定cwd $,如下所示:

"cwd": "${workspaceRoot}"

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
        "stopOnEntry": false,
        "args": [
            "${workspaceRoot}/config/config.js"
        ],
    }
]

我看到 Protractor 和 VSCode 存在同样的问题。
我尝试在同一个项目中直接使用 cucumber-js,它工作正常,所以这必须与量角器或量角器-黄瓜框架有关

谢谢你张贴这个! 一年多后我找到了它,“cwd”修复对我有用。

此页面是否有帮助?
0 / 5 - 0 等级