问题标签 [mochawesome]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cypress - Cypress BDD:Cypress Cucumber 处理器:无法运行步骤定义 .js 文件
我正在尝试构建一个柏树 BDD 框架。我认为我已经正确创建了功能和步骤定义文件。当我使用 运行测试时,我在此视频中npx cypress run --spec cypress/integration/examples/shoppingCart.feature --headed --browser chrome
得到以下结果,视频长约 20 秒。
我不知道该怎么想,所以我制作了另一个视频,这是一个消除过程并查看 BDD 设置的过程。我仍然不确定(这个大约 8 分钟长)。
我将添加功能文件、步骤定义文件和错误消息。
我完全不解。
错误信息
特征文件
场景:用户可以购买商品并将其交付到送货地址
步骤定义文件
我确信我什至在正确的地方创建了 BDD 框架。
更新:
我刚刚被问到non global step definitions
我的 package.json 中的内容(我只从“脚本”部分开始复制)。
快速浏览我什至没有看到它。
selenium-webdriver - 需要通过失败的测试离开绿色构建
是否有可能跳过失败的摩卡测试进行构建,但请参阅报告?(具有不同的名称,例如@flaky)。
这意味着我有 20 个失败的测试,但构建是跳过它们并绝对成功。
jenkins - 如何通过 Jenkins 将 mochawesome 报告附加为电子邮件附件
如何通过 Jenkins Pipeline 脚本将 mochawesome 报告 [Cypress] 作为电子邮件附件附加
node.js - 如何在节点 js 中执行包含异步 postgres 查询的 Mocha 测试套件
当我执行单个测试规范时,我的项目 npm 项目运行得很好,即,
我的项目文件夹结构是
我的 package.json 是
在 mytest1.js 里面我有
现在,如果我使用下面的 package.json 运行相同的测试
如果给出以下命令,测试不会运行
其中 config/conf.main 过滤我要运行的每个测试并传递给 mochaMain
docker - 如何在 Cypress Docker 容器中配置多个报告器?
Cypress 提供了安装和配置多个报告器的手册:https ://docs.cypress.io/guides/tooling/reporters#Merging-reports-across-spec-files
我的目标是让它在 Docker 容器中工作并将结果提供给主机。为此目的做了什么:
Dockerfile:
记者-config.json:
码头工人-compose.yml:
包.json:
所以,我希望在运行命令dockerReports
后在主机上有一个包含合并的 JUnit 和 Mochawesome 报告的目录。docker-compose up
这个目录确实出现了,但它是空的。是什么原因?
webdriver-io - 如何在 webdriverIO 中添加 mochawesome 报告生成器?
我一直wdio.config.js
在 webdriverIO 上的文件中尝试以下内容,但无济于事。我有:
我的 package.json 看起来像这样:
node.js - 归档报告,cypress.json 文件
我想将所有新的和以前的报告存储在我的目录中。
当前行为
现在,在通过“npm run test”运行测试后,以前的报告被删除或附加(当我在 package.json 中删除行清理报告时)。
期望的行为
我想给我的目录路径一个动态名称,例如当前日期或数字,以便以前的路径保持原样,但我不知道是否可以在 cypres.json 中执行此操作。有什么解决方法吗?
代码
包.json
"脚本": { "clean:reports": rmdir /S /Q cypress\reports && mkdir cypress\reports && mkdircypress\reports\mochareports",
"pretest": "npm run archive-report && npm run clean:reports",
"scripts": "cypress run --browser chrome",
"combine-reports": "mochawesome-merge ./cypress/reports/chrome/mocha/*.json > cypress/reports/chrome/mochareports/report.json",
“生成报告”:“marge cypress/reports/chrome/mochareports/report.json -f 报告 -o cypress/reports/chrome/mochareports”,
"posttest-chrome": "npm run combine-reports && npm run generate-report",
"test-chrome": "npm 运行脚本 || npm run posttest-chrome"
柏树.json
"reporter": "cypress-multi-reporters",
“记者选项”:{
"reporterEnabled": "mochawesome",
"mochaFile": "raports/my-test-output-.xml",
“mochawesomeReporterOptions”:{
"reportDir": "cypress/reports/mocha",
“相当”:是的,
“覆盖”:假,
“html”:假,
“json”:真
} }
类似:cypress.json 中 mochawesome 报告器选项的 ReportDir 指向在运行时创建的以时间戳命名的文件夹
testing - 赛普拉斯 HTML 日志在指示 cy.get() DOM 元素名称方面很糟糕,是否有任何解决方案/解决方法?
如果我有柏树代码:
当然,cypress open
我可以在日志中看到cy.get(XXX)
标准(在我的情况下是 testid 属性),但对于cypress run
HTML 日志,仅输出:
这有什么帮助?我无法知道哪个失败了,因为我所看到的只是<button.bp3-button>
. 我想在cy.get()
通话中查看 testid 属性。有没有办法让cy.get(XXX)
标准成为<button.bp3-button>
故障日志中的位置?
javascript - 执行 mochawesome-merge 时出现“JSON 输入意外结束”
我尝试按照本文中的建议删除命令中的空格。我还尝试按照本文中的建议重新编码 mochawesome.json 。但非工作。
你可以在 gdrive 上找到我的 json 文件。
当我尝试合并它们时,出现以下错误:
我在 Windows 10 上。以下是与节点相关的版本:
包.json
更新
我尝试运行mochawesome-merge cypress/reports/*.json
,它在控制台上打印了合并的 json。所以我尝试先将合并的 json 字符串通过管道传输到.txt
文件,然后将文件重命名.txt
为.json
文件,最后执行marge
. 奇怪的是它开始工作了......所以这些是我更新的package.json
脚本:
请注意以下两个新脚本:
运行npm run final_report2
生成所需的报告。