azure-pipelines - 在 VSTS 管道上运行时在赛普拉斯中滚动
问题描述
这是一个奇怪的问题......我不得不在scrollTo
我的 E2E 赛普拉斯测试中插入一个条目:
// More details for Standard Twin,
cy.scrollTo('0%,60%');
cy.wait(3000);
cy.get(':nth-child(2) > :nth-child(1) > :nth-child(1) > .jss639 > .jss675 > .jss963 > .jss959 > .jss985 > .jss578 > :nth-child(1) > .jss476 > .jss550').click();
如果没有scrollTo,则永远找不到第三行中的命令按钮......我也必须放入一个cy.wait
。
现在,当本地运行有头或无头、Chrome 或 Electron、VS Code 或 Cypress runner 时,它的运行时间为 100%。
但是一旦我尝试在 VSTS 管道中运行,无论我使用哪个选项,测试都不会找到这个元素。我也尝试过使用带有 PX 值而不是 %ages 的 scrollTo,但这更不可靠。
就好像 VSTS 管道“忽略”了滚动指令。
有人建议吗?
谢谢大卫
解决方案
如果您的应用程序中有以下样式,则可能会干扰赛普拉斯的滚动行为:
html { scroll-behavior: smooth; }
您可以在 cypress 中使用以下代码修复它:
cy.get('html').invoke('attr', 'style', 'scroll-behavior: inherit');
推荐阅读
- c++ - 为什么使用不匹配的参数调用重载函数仍然有效
- caching - 挂起和取消挂起不想缓存在 cPanel
- javascript - 如何使用单个入口点编译和执行多个 TypeScript 模块到单个文件
- variables - 如何覆盖 Dart/flutter 上的变量
- java - 我在获取 firebase 图像的 url 时遇到问题
- java - Cookie cookie[]= req.getCookies() 行的编译错误“类型不匹配”;
- authentication - 有没有办法通过终端验证google API的OAUTH2.0?
- python - Conv2DSlowBackpropInput:输入深度必须能被过滤器深度整除
- mongodb - Springboot 使用 find*() 查询时出现 Mongodb 错误
- javascript - 将力树约束到不规则边界 d3