想知道是否有某种方法可以使用 Cypress.io 在一定范围内测试滚动量。
更具体
- 从页面顶部开始,按下按钮
- 页面向下滚动到一定高度
- 测试滚动高度在一定范围内是否正确
我的尝试: 我认为最好的方法是测试当前的 div 是否不在手机屏幕的可视区域内。然后向下滚动,使其可见。
cy.get('#angular-projects').should('not.be.visible') // div #angular-projects
cy.get('#developer-projects').click() // button
cy.get('#angular-projects').should('be.visible')
想知道这是否可以通过 mocha、chai 来完成,如果没有 cypress 解决方法
最佳答案
您可以使用 cy.window() 获取 window
对象然后构建您的断言,检查 scrollY 是否等于您的预期。
像这样的东西应该测试滚动距离顶部是否在 300 到 500 像素之间(closeTo 的第一个参数指定你想要的值,第二个是你想要接受的误差范围):
cy.window().then(($window) => {
expect($window.scrollY).to.be.closeTo(400, 100);
});
关于javascript - Cypress .io : Anyway to test for specific scroll amount?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50001164/