1

我正在尝试创建一个 grunt 任务来运行 cucumber.js 测试。测试在我的项目中组织在功能“区域”中,例如:

project_root
    --test
        --spec-e2e
            --home_Page
                --features
                --step_definitions

从我项目的 node_modules 目录中,我可以手动运行 cucumber.js ,一切都很好:

$ node cucumber.js ../../../test/spec-e2e/home_Page/features/

输出:

1 scenario (1 passed)
3 steps (3 passed)

我似乎无法正确配置 grunt-cucumber 任务以重新创建相同的结果。在我的 Gruntfile.js 中,我有以下配置:

 // Cucumber test runner
    cucumberjs: {
      src: 'test/spec-e2e/home_Page/features',
      options: {
        steps: 'test/spec-e2e/home_Page/features/step_definitions',
        format: 'pretty'
      }
    }
    ...
//Register task
grunt.registerTask('cucumber', ['cucumberjs']);

运行$ grunt cucumber只允许输出:

$ Running "cucumberjs:src" (cucumberjs) task

$ Done, without errors.

所以我没有收到任何错误或黄瓜摘要输出。如果我故意编辑我的 step_definitions 之一以失败,结果总是相同的。有人能告诉我如何正确配置吗?

谢谢!

4

1 回答 1

0

试试这个:

请通过以下文档:

Grunt 黄瓜 js 文档

这段代码对我有用:

     grunt.initConfig({
           cucumberjs: {
                    all: {
                        src: 'features',
                        options: {
                            backtrace: true,
                            useShortStackTraces: false,
                            format: "json:<path where want to write json report>",
                            steps: 'features',
                            tags: grunt.option('feature')

                        }
                    }   
        });

    grunt.registerTask('default', ['cucumberjs:all']);
于 2019-08-01T10:18:45.353 回答