Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在GitLab CI中运行./node_modules/.bin/js时出错_Node.js_Typescript_Npm_Gitlab Ci_Cucumberjs - Fatal编程技术网

Node.js 在GitLab CI中运行./node_modules/.bin/js时出错

Node.js 在GitLab CI中运行./node_modules/.bin/js时出错,node.js,typescript,npm,gitlab-ci,cucumberjs,Node.js,Typescript,Npm,Gitlab Ci,Cucumberjs,我正在为我的节点项目设置CI生成。尽管我的npm运行测试在本地环境中按预期工作,但gitlab ci抛出了一个异常 测试命令在以下情况下失败: >nyc./node_modules/.bin/cucumber js./test/BDD/***.feature-f node_modules/cucucumber pretty-f json:./test/report/cucucucumber_report.json--需要模块ts节点/寄存器--需要./test/***.ts 错误:“test/B

我正在为我的节点项目设置CI生成。尽管我的
npm运行测试在本地环境中按预期工作,但gitlab ci抛出了一个异常

测试命令在以下情况下失败:
>nyc./node_modules/.bin/cucumber js./test/BDD/***.feature-f node_modules/cucucumber pretty-f json:./test/report/cucucucumber_report.json--需要模块ts节点/寄存器--需要./test/***.ts

错误:“test/BDD/step definition.ts”中的分析错误:(1:1):应为:#EOF、#Language、#TagLine、#FeatureLine、#Comment、#Empty,从“cumber”中获取“import{StepDefinitionCode,给定,When,Then,StepDefinitionOptions}” at/builds/cristianmercado19/basic package/node_modules/cucumber/src/cli/helpers.js:66:13 在Array.forEach()处 在forEach(/builds/cristianmercado19/basic package/node_modules/cucumber/src/cli/helpers.js:54:10) 在Generator.next()处 在Generator.tryCatcher(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/util.js:16:23) 在PromiseSpawn._PromiseCompleted(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/generators.js:97:49) at/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/generators.js:201:15 在getTestCases(/builds/cristianmercado19/basic package/node_modules/cucumber/lib/cli/helpers.js:102:18) 在getTestCases(/builds/cristianmercado19/basic package/node_modules/cucumber/src/cli/helpers.js:32:13) 在Generator.next()处 在Generator.tryCatcher(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/util.js:16:23) 在PromiseSpawn._PromiseCompleted(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/generators.js:97:49) 在Promise._settlePromise(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/Promise.js:579:26) 按承诺。_settlePromise0(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/Promise.js:619:10) 按承诺。_结算计划(/builds/cristianmercado19/basic package/node_modules/bluebird/js/release/Promise.js:699:18) 在drainQueueStep(/builds/cristianmercado19/basic package/node\u modules/bluebird/js/release/async.js:138:12)

截图:

My
.gitlab ci.yml
配置:

图像:节点:最新
阶段:
-建造
-试验
隐藏物:
路径:
-节点单元/
安装依赖项:
阶段:建造
脚本:
-npm安装
-npm构建
人工产品:
路径:
-节点单元/
测试(u)测试:
阶段:测试
脚本:npm测试
“我的黄瓜”文件夹结构:

我试过

  • 获取工件并将
    cucumber
    文件夹与我的本地文件夹进行比较。两者都是一样的
  • 移除纽约市
  • 更新软件包版本
  • 此最小脚本也会失败。
    “测试”:“/node\u modules/.bin/js test/BDD/***。功能--需要模块ts node/register--需要./test/***.ts”,

我不知道该脚本在GitLab CI中不起作用的原因(在我的本地版本中起作用)

“test:“nyc cucumber js-f node_modules/cucumber pretty-f json:./test/report/cucucumber_report.json——需要test/***.ts./test/BDD/***.feature”,

相反,我在
cucumber.js
文件中提取了该配置

let common = [
  'test/**/*.feature',
  '--require-module ts-node/register',
  '--require test/**/*.ts',
  '--format node_modules/cucumber-pretty',
  '--format json:./test/report/cucumber_report.json'
].join(' ');

module.exports = {
  default: common,
};
并将
test
脚本替换为:

“测试”:“nyc./node\u modules/.bin/cucumber js-p default”,