我试图创建一个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失败,结果总是一样的。有人能告诉我如何正确配置吗?
谢谢!
答案 0 :(得分:0)
尝试以下操作:
请仔细阅读以下文档:
此代码对我有用:
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']);