cy.request(x).then(pdfContent =>
open
模式下,也适用于错误屏幕截图和视频中)。因此,如果测试例如在第一页上找不到某个字符串,用户可以在某种程度上进行某种视觉验证。
如果我实际上是pdf,我会遇到一个错误,因为赛普拉斯期望run
如果我在链接上让柏树
cy.visit
显示PDF,但是我遇到了一个错误,我猜是因为PDF的加载不会触发某些事件,例如网页。我试图像以下代码那样通过捕获的错误欺骗。我可以看到content-type: 'text/html'
匹配(因为在测试过程中看起来有所不同,并且测试也获得了绿色✓),但是错误仍然停止了测试(也可以将其表示为docs):
application/pdf
,根据要求,有关包含链接的页面的一些详细信息。它由MailDev生成,并包含一个简单的链接:
click
我举办了您给的示例:
Timed out
against非常简单的pdf来自WC3,它打开了。
page load
部分打开一个新选项卡,但是如果要在同一选项卡中打开,则可以通过删除目标属性来完成。
on("fail"
let pdfUrl = ""
cy.get(pdfSelector).as("pdfLink").invoke("attr", "target", "").invoke("attr", "href").then((href) => {
pdfUrl = href
}).then(() => {
Cypress.config("pageLoadTimeout", 500)
Cypress.on("fail", () => {
cy.request(pdfUrl).then(pdfContent => cy.log("FIXME never happens"))
})
cy.get("@pdfLink").click()
cy.request(pdfUrl).then(pdfContent => cy.log("FIXME never happens"))
})
域 - 如果域不同,您可能需要一个原始命令。