我可以使用啥工具通过 cypress 自动化截屏?
Posted
技术标签:
【中文标题】我可以使用啥工具通过 cypress 自动化截屏?【英文标题】:What tool can I use to take a screenshot with cypress automation?我可以使用什么工具通过 cypress 自动化截屏? 【发布时间】:2021-12-19 16:47:56 【问题描述】:我有一个 cypress spec.js,我想在多次对整个页面进行特定断言后截取几张截图。我希望屏幕截图在文件夹或报告中可用。 我有 mochawesome 和 Junit 记者。我可以使用的最佳屏幕截图工具是什么?
【问题讨论】:
【参考方案1】:您可以使用cy.screenshot()
命令在 cypress 中截取屏幕截图。您可以从here 了解更多信息。
断言之后你可以这样做:
cy.get('selector').should('have.text', 'some text').screenshot()
您也可以直接使用该命令,而无需像这样链接到任何先前的命令:
cy.screenshot()
您也可以像这样添加屏幕截图名称:
cy.get('selector')
.should('have.text', 'some text')
.screenshot('name') //will save screenshot with name.png
您也可以按照您想要的目录保存屏幕截图,如下所示:
cy.get('selector')
.should('have.text', 'some text')
.screenshot('path to folder/name')
现在您可以通过 capture
选项让 cypress 知道要捕获 Test Runner 的哪些部分。对于元素屏幕截图,此值将被忽略。
cy.get('selector')
.should('have.text', 'some text')
.screenshot('name', capture: 'fullPage')
viewport
- 在当前视口中捕获正在测试的应用程序。
fullPage
- 被测应用程序从上到下完整捕获。
runner
- 整个浏览器视口,包括赛普拉斯命令日志,都被捕获。
【讨论】:
以上是关于我可以使用啥工具通过 cypress 自动化截屏?的主要内容,如果未能解决你的问题,请参考以下文章