NPM脚本:"cucumber": "cucumber-js --require features/tests.setup.js --require features/**/*.ts"。
tests.setup.js
require('ts-node').register({
transpileOnly: true,
compilerOptions: {
"module": "commonjs",
},
});Gitlab CI错误
> cucumber-js --require features/tests.setup.js --require features/**/*.ts
Error: Parse error in 'features/step-definitions/steps.calculus-triangle.ts': (1:1): expected: #EOF, #Language, #TagLine, #FeatureLine, #Comment, #Empty, got 'import {Then} from 'cucumber''
at events.forEach.event (/builds/Ambroise-Rabier/mandala-vibratoire/node_modules/cucumber/lib/cli/helpers.js:110:13)
at Array.forEach (<anonymous>)
at getTestCases (/builds/Ambroise-Rabier/mandala-vibratoire/node_modules/cucumber/lib/cli/helpers.js:81:10)
at _bluebird.default.each (/builds/Ambroise-Rabier/mandala-vibratoire/node_modules/cucumber/lib/cli/helpers.js:58:35)它在本地工作(win 10),但在Gitlab CI上,它似乎忽略了类型文本编译。
发布于 2020-07-19 08:49:45
我在Error running ./node_modules/.bin/cucumber-js in GitLab CI的帮助下找到了一些有用的东西,但是我没有使用nyc,所以这里的解决方案只使用cucumberjs。
NPM脚本:"cucumber": "cucumber-js --profile default"。
在项目根目录下创建 cucumber.js文件,内容如下:
let common = [
'--require features/tests.setup.js',
'--require features/**/*.ts',
].join(' ');
module.exports = {
default: common,
};相关文档:https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#profiles
https://stackoverflow.com/questions/62978118
复制相似问题