对 iframe 中的元素执行操作时出现以下错误:
"60000 毫秒后重试超时:预期 '
' 为 '可见' 此元素
不可见,因为它的有效宽度和高度为:0 x 0像素。”
这是我的元素代码:
cy.get('iframeselector',{timeout: 150000})
.its('0.contentDocument.body').should('not.be.empty')
.then(cy.wrap).find('p').should('be.visible').clear().type('abc')
我尝试使用 {force:true} 甚至通过调用方法更改宽度。但到目前为止对我没有任何作用。任何帮助将不胜感激。
答案 0 :(得分:0)
我得到了解决方案。页面中有 3 个其他 iframe,每个 iframe 都在一个容器内。我打算对第二个 iframe 中的元素执行操作,默认情况下,我的代码试图处理第一个 iframe 中的元素。
Cyress 没有给出关于找到多个 iframe 的错误信息。所以它以 0x0 像素错误让我失望。以下对我有用:
cy.get('parentContainer').within(()=>{
cy.get('iframeselector',{timeout: 150000})
.its('0.contentDocument.body').should('not.be.empty')
.then(cy.wrap).find('p').should('be.visible').clear().type('abc')
})