如何检测容器是否包含按钮或图片?Cypress测试技术问询
验证容器内是否包含按钮或图片的Cypress写法
验证指定Class下存在按钮
你之前的代码里.invoke('button')是错误用法,因为button不是合法的调用方法。正确的做法是直接在目标容器下通过选择器查找按钮元素,再做断言:
// 验证.banner-square-overlay-container下至少有一个按钮 cy.get('.banner-square-overlay-container button').should('have.length.gt', 0)
如果需要更精准的匹配,比如指定按钮类型或样式类,可以调整选择器:
- 匹配
<button>标签:cy.get('.banner-square-overlay-container > button').should('exist') - 匹配带特定class的按钮:
cy.get('.banner-square-overlay-container .btn-primary').should('have.length', 1)
验证指定Class/Div下存在图片
同样用后代选择器定位<img>元素,还可以额外验证图片是否正常加载:
// 验证容器下存在至少一张图片 cy.get('.banner-square-overlay-container img').should('have.length.gt', 0) // 可选:验证图片已成功加载(避免占位图或加载失败的情况) cy.get('.banner-square-overlay-container img').should('be.visible') .then(($img) => { expect($img[0].naturalWidth).to.be.greaterThan(0) })
内容的提问来源于stack exchange,提问作者arif ur rahman
相关产品推荐
相关产品推荐

