在使用 Cypress 进行自动化测试时,默认情况下,Cypress 会尝试将要交互的元素滚动到视图中。如果您不希望 Cypress 自动滚动页面,您可以使用 { scrollBehavior: false }
作为命令的选项来禁止自动滚动。
举个例子,如果您正在使用 click()
命令:
javascriptcy.get('button').click({ scrollBehavior: false });
在这个例子中,Cypress 将点击页面上的按钮,但它不会自动将按钮滚动到可视范围内。这意味着如果按钮原本不在视窗范围内,点击可能不会发生。
您也可以在全局设置中更改滚动行为,这样您就不必在每个命令中都指定 { scrollBehavior: false }
。在您的 cypress.json
配置文件中,您可以添加 scrollBehavior
配置来设置默认行为:
json{ "scrollBehavior": false }
通过这种方式,Cypress 测试运行时将不会在任何命令中自动滚动。
请注意,禁用自动滚动可能会导致您的交互性命令(如点击或类型)无法正确执行,如果元素在执行命令时不在视口中的话。这可能会影响测试的可靠性,因为在正常浏览条件下,用户通常会滚动到元素可见后才进行交互。
2024年6月29日 12:07 回复