检查未使用的黄瓜步骤定义

问题描述 投票:0回答:1

我正在将 webdriverio 与 cucumber 一起使用,并且想清除我的项目中未使用的步骤定义和代码。我尝试使用此“cucumber-js --dry-run --format use”,但结果收到“无步骤定义”。有人可以告诉我是否必须添加一些额外的参数、一些配置或某物。别的。或者有其他方法可以做到这一点?或者也许有一些合适的工具或插件。

webdriver-io cucumberjs
1个回答
0
投票

可能是在你的 Cucumber 配置中你没有指向

step-definitions
文件夹。这是我的配置,注意
require
指向
step-definitions
文件夹,
paths
指向
features
文件夹:

/**
 * @exports Cucumber default config
 */
export default {
    paths: ['src/features/**/*.feature'],
    parallel: 2,
    requireModule: ['ts-node/register'],
    require: ['src/step-definitions/**/*.ts'],
    strict: true,
    format: ['json:reports/cucumber-report.json', 'progress'],
    formatOptions: {
        snippetInterface: 'async-await'
    }
};

然后这是我用来检查未定义和步骤用法的脚本,它们位于我的

package.json
内。

"scripts": {
  "features:usage": "cucumber-js src/features/ --format usage --dry-run",
  "features:undefined": "cucumber-js src/features/ --format snippets --dry-run"
 }

features:usage
记录已定义的
.steps
文件步骤以及正在使用哪个
.feature
文件步骤。

features:undefined
以这种格式记录未定义的步骤:

Then('Random step', async function () {
  // Write code here that turns the phrase above into concrete actions
  return 'pending';
});

我正在使用

npm
,因此我会像
npm run features:usage
一样运行它们。

参考资料:

  1. 黄瓜-js-文档

  2. 黄瓜剧作家模板库

© www.soinside.com 2019 - 2024. All rights reserved.