gpt4 book ai didi

javascript - 我怎样才能用 cucumber 覆盖 Protractor

转载 作者:行者123 更新时间:2023-11-29 14:47:57 25 4
gpt4 key购买 nike

我的项目是基于 Django 和 Angular 构建的。
我使用带有 cucumber 和柴的 Protractor 作为我的端到端测试。
并使用“grunt-protractor-coverage”来报告代码覆盖率。我在这里有一个问题,如果我使用 jasmine 作为 Protractor 框架,那么当我运行“grunt test”时就没问题了。但是当我使用 cucumber 时,会发生错误。

[launcher] Process exited with error code 1/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:126                    throw e;                          ^Error: Spec patterns did not match any files.    at Runner.run (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/lib/runner.js:249:11)    at TaskRunner.run (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/lib/taskRunner.js:123:19)    at createNextTaskRunner (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/lib/launcher.js:220:20)    at /Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/lib/launcher.js:243:7    at _fulfilled (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:797:54)    at self.promiseDispatch.done (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:826:30)    at Promise.promise.promiseDispatch (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:759:13)    at /Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:573:44    at flush (/Users/paizanmay/Documents/ichef/Superadmin2.0/node_modules/protractor/node_modules/q/q.js:108:17)    at process._tickCallback (node.js:355:11)

我真的不知道怎么解决
“specs: ['features/store_id_admin.feature']”在“grunt-protractor-coverage”中没用吗?

谢谢

最佳答案

grunt-protractor-coverage 看起来不像是为与 CucumberJS 一起工作而设计的。虽然我设法让它读取我的规范列表(我将 protractor.conf.js 移动到我的应用程序的根目录并指定了完整路径)插件希望规范以 JavaScript 编写,以便可以重写它们以收集/推送覆盖数据后退。当您的测试运行时,一个小型服务在后台运行(覆盖收集器)以整理每个场景的覆盖数据。

理论上,CucumberJS 还提供了类似的钩子(Hook),可以与步骤定义一起指定,以在每个功能/步骤之后记录来自 window.__coverage__ 对象的数据:https://github.com/cucumber/cucumber-js#after-hooks

(您可以在此处查看用于将覆盖率数据写入收集器的模板:https://github.com/r3b/grunt-protractor-coverage/blob/master/resources/saveCoverage.tmpl)

可以向插件添加一个选项以阻止它尝试解析/更改规范文件并使覆盖率数据正常工作。


更新:我对我的 Github 分支 (https://github.com/gazoakley/grunt-protractor-coverage) 上的 grunt-protractor-coverage 做了一些调整。有一个拉取请求让它回到实际的 grunt-protractor-coverage:https://github.com/r3b/grunt-protractor-coverage/pull/44

关于javascript - 我怎样才能用 cucumber 覆盖 Protractor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30233257/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com