我在这个主题上阅读了一些Cypress GitHub issues。但我不知道该如何使它起作用。
基本上,我想在无头非GUI模式下捕获所有Cypress GUI命令日志。如果可以包括浏览器控制台日志将更好。目的是了解测试失败时发生了什么。
我使用teamcity作为CI。这是我的构建日志示例。我也想在这里看到所有的命令日志。实际上,在服务器端使用
cy.task
运行的任何console.log都会显示在构建日志中。运行cy.task('log',message)
太麻烦了。有更聪明的方法吗?[09:49:08][Step 1/1] 2 of 4: new actions (52s)
[09:50:00][Step 1/1] 3 of 4: new actions (52s)
[09:50:53][Step 1/1] 4 of 4: new actions (53s)
[09:51:47][Step 1/1] (Results)
[09:51:47][Step 1/1]
[09:51:47][Step 1/1] ┌─────────────────────────────────────┐
[09:51:47][Step 1/1] │ Tests: 8 │
[09:51:47][Step 1/1] │ Passing: 8 │
[09:51:47][Step 1/1] │ Failing: 0 │
[09:51:47][Step 1/1] │ Pending: 0 │
[09:51:47][Step 1/1] │ Skipped: 0 │
[09:51:47][Step 1/1] │ Screenshots: 0 │
[09:51:47][Step 1/1] │ Video: true │
[09:51:47][Step 1/1] │ Duration: 3 minutes, 38 seconds │
[09:51:47][Step 1/1] │ Estimated: 1 minute, 8 seconds │
[09:51:47][Step 1/1] │ Spec Ran: action/action_spec.js │
[09:51:47][Step 1/1] └─────────────────────────────────────┘
console
并以某种方式将日志发送回节点的控制台日志。我需要使用cy.task
创建一个侦听端口的终点吗? - Jake Hecy.task
将代码运行到 Node 环境中。然后只需使用 fs 将其写入文件,但要进行一些漂亮的格式化。我还想捕获命令日志格式化为 HTML(不仅仅是测试),以供文档使用,因此document.getElementById('root').innerHTML
看起来是实现这一目标的方法。 - user8745435