Cucumber-js: 在 windows 下运行 cucumber-js 出现问题

创建于 2012-04-28  ·  21评论  ·  资料来源: cucumber/cucumber-js

已按照指导,通过 msi 安装了 nodejs。 文件

之后 npm install 只能在 c:\programfiles \nodejs 下工作。 并且每次都在 node.js 下复制我的整个车间文件夹结构。

我尝试了本地和全局 npm 运行。 在重新评估机器后,我能够运行 npm install 在我的车间作为车间文件夹运行\npm install --dev

安装顺利

但是,当我按照指导输入 @node_env=test .. 时。 它一直说它无法识别命令

但是,当我键入 cucumber.js 时,它会弹出脚本错误。
说:

脚本:

c.:\ users.currentuserappdata\roaming\npm\cucumber.js

行:1
字符:1
错误:无效字符
代码:800a03f6
来源:miscrosoft jscript 编译错误

当我打开 c.:\users.currentuserappdata\roaming\npm\cucumber.js 我有这个

!/bin/sh

如果 [ -x " dirname "$0" /node" ]; 然后
" dirname "$0" /node" " dirname "$0" /../cucumber/bin/cucumber.js" "$@"
转=$?
别的
节点 " dirname "$0" /../cucumber/bin/cucumber.js" "$@"
转=$?

退出 $ret


感谢您的及时回复#jbpros

最有用的评论

@Jon-Biz 尝试运行cucumber-js而不是cucumber.js 。 如果这不能解决您的问题,请打开另一个问题。

所有21条评论

感谢您报告此事。 我试过在 Windows 上运行 Cucumber.js,我得到了和你一样的错误。 我会修复它。

我刚刚收到此错误消息:

脚本:

c.:\ users.currentuserappdata\roaming\npm\cucumber.js

行:1
字符:1
错误:无效字符
代码:800a03f6
来源:miscrosoft jscript 编译错误

在节点 0.8.8 的新安装和黄瓜的新 npm 安装上。 谢谢。

@Jon-Biz 尝试运行cucumber-js而不是cucumber.js 。 如果这不能解决您的问题,请打开另一个问题。

@jbpros工作正常,谢谢! :-)

@Jbpros ,我使用 cucumber-js 代替 cucumber.js,但另一个错误仍然存​​在,你知道如何解决吗?
C:\Users\hui\AppData\Roaming\npm>cucumber-js
SyntaxError:意外的令牌案例
在exports.runInThisContext (vm.js:53:16)
在 Module._compile (module.js:387:25)
在 Object.Module._extensions..js (module.js:422:10)
在 Module.load (module.js:357:32)
在 Function.Module._load (module.js:314:12)
在 Module.require (module.js:367:17)
在要求(内部/module.js:16:19)
在 ProfileLoader。(C:\Users\hui\AppData\Roaming\npm\node_modules\
黄瓜\lib\cli\profile_loader.js:55:27)
在下一个(本机)
在 tryCatcher (C:\Users\hui\AppData\Roaming\npm\node_modules\cucumber\node_m
odules\bluebird\js\release\util.js:16:23)
在 PromiseSpawn._promiseFulfilled (C:\Users\hui\AppData\Roaming\npm\node_mod
ules\cucumber\node_modules\bluebird\js\release\generators.js:97:49)
在 Promise._settlePromise (C:\Users\hui\AppData\Roaming\npm\node_modules\cuc
umber\node_modules\bluebird\js\release\promise.js:574:26)
在 Promise._settlePromise0 (C:\Users\hui\AppData\Roaming\npm\node_modules\cu
麻烦\node_modules\bluebird\js\release\promise.js:614:10)
在 Promise._settlePromises (C:\Users\hui\AppData\Roaming\npm\node_modules\cu
麻烦\node_modules\bluebird\js\release\promise.js:693:18)
在 Async._drainQueue (C:\Users\hui\AppData\Roaming\npm\node_modules\cucumber
\node_modules\bluebird\js\releaseasync.js:133:16)
在 Async._drainQueues (C:\Users\hui\AppData\Roaming\npm\node_modules\cucumbe
r\node_modules\bluebird\js\releaseasync.js:143:10)

我犯了同样的错误。 对此有何更新?

错误:
您似乎正在执行黄瓜安装(很可能是全局安装)
这与您的本地安装(支持文件中所需的安装)不同。
为了使黄瓜工作,您需要执行支持文件中所需的相同安装。
请执行本地安装的版本来运行您的测试。

  Executed Path: C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\lib\index.js
  Local Path:    C:\webdriverio-test\node_modules\cucumber\lib\index.js

at C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\lib\cli\install_validator.js:20:13
at Generator.next (<anonymous>)
at Generator.tryCatcher (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\util.js:16:23)
at PromiseSpawn._promiseFulfilled (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\generators.js:97:49)
at Promise._settlePromise (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\promise.js:574:26)
at Promise._settlePromise0 (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\promise.js:614:10)
at Promise._settlePromises (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\promise.js:693:18)
at Async._drainQueue (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\async.js:133:16)
at Async._drainQueues (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\async.js:143:10)
at Immediate.Async.drainQueues (C:\Users\Kanmani\AppData\Roaming\npm\node_modules\cucumber\node_modules\bluebird\js\release\async.js:17:14)
at runCallback (timers.js:800:20)
at tryOnImmediate (timers.js:762:5)
at processImmediate [as _immediateCallback] (timers.js:733:5)

您对该错误有疑问吗? 它告诉你需要做什么。

@charlierudolph对不起,我传错了.. 感谢您的指点。
我试图将可执行路径更改为本地但得到:
错误:
您似乎正在执行黄瓜安装(很可能是全局安装)
这与您的本地安装(支持文件中所需的安装)不同。
为了使黄瓜工作,您需要执行支持文件中所需的相同安装。
请执行本地安装的版本来运行您的测试。

  Executed Path: c:\webdriverio-test\node_modules\cucumber\lib\index.js
  Local Path:    C:\webdriverio-test\node_modules\cucumber\lib\index.js

at c:\webdriverio-test\node_modules\cucumber\lib\cli\install_validator.js:20:13
at Generator.next (<anonymous>)
at Generator.tryCatcher (c:\webdriverio-test\node_modules\bluebird\js\release\util.js:16:23)
at PromiseSpawn._promiseFulfilled (c:\webdriverio-test\node_modules\bluebird\js\release\generators.js:97:49)
at Promise._settlePromise (c:\webdriverio-test\node_modules\bluebird\js\release\promise.js:574:26)
at Promise._settlePromise0 (c:\webdriverio-test\node_modules\bluebird\js\release\promise.js:614:10)
at Promise._settlePromises (c:\webdriverio-test\node_modules\bluebird\js\release\promise.js:693:18)
at Async._drainQueue (c:\webdriverio-test\node_modules\bluebird\js\release\async.js:133:16)
at Async._drainQueues (c:\webdriverio-test\node_modules\bluebird\js\release\async.js:143:10)
at Immediate.Async.drainQueues (c:\webdriverio-test\node_modules\bluebird\js\release\async.js:17:14)
at runCallback (timers.js:800:20)
at tryOnImmediate (timers.js:762:5)
at processImmediate [as _immediateCallback] (timers.js:733:5)

@charlierudolph
当我更改为 C:/ (大写)....它开始运行
干杯

当我运行命令“cucumber.js”时,我遇到了同样的问题。 修复它我只是跑了“黄瓜”,它工作得很好。

@ShailendraPrSinghhttps://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#cli上查看给 Windows 用户的说明

@vvedachalam我也面临同样的问题。你是如何改变路径的?
我应该在哪里改变请告诉我

有人可以告诉我如何将可执行路径更改为本地路径吗?

如果您全局安装了黄瓜,请将其卸载。 然后从您的项目路径中运行./node_modules/.bin/cucumber-js 。 如果您将./node_modules/.bin/到路径中,那么您应该能够通过cucumber-js执行它

@charlierudolph我有同样的错误,但在mac上,按照你的步骤为我工作,谢谢:)

嗨@jbpros
我是windows用户。。
试图运行 node_modules\cucumber\bincucumber-js

  1. 它抛出无法识别的错误。
  2. 我认为您已在此 pr 32b5ced 中修复,但我没有看到黄瓜 @4.2.1 的 package.json 中的这些变化
  3. 你能告诉我windows的步骤吗

你好
在更新映射到本地黄瓜框架的环境中的路径变量后,我看到了这个问题。

你能帮忙吗

@charlierudolph
当我更改为 C:/ (大写)....它开始运行
干杯


@charlierudolph
当我更改为 C:/ (大写)....它开始运行
干杯

你能告诉你是怎么把 c 变成大写的 C 的吗?
谢谢

FWIW 我在 git bash 中运行它并且脚本在 c:\users... 下运行并且收到上面提到的错误,我切换到 Windows 命令提示符并运行相同的 npm test 命令并且运行正常。 在cmd下,它运行的路径是c:\Users...

该线程已被自动锁定,因为它关闭后没有任何最近的活动。 请针对相关错误打开一个新问题。

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

相关问题

Niceplace picture Niceplace  ·  4评论

jfstephe picture jfstephe  ·  4评论

hdorgeval picture hdorgeval  ·  3评论

NoNameProvided picture NoNameProvided  ·  5评论

kozhevnikov picture kozhevnikov  ·  6评论