You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Appium项目中Chrome浏览器无法滚动的问题求助

嘿,我之前在做Appium操作Chrome的时候也碰到过一模一样的报错!结合你给出的信息,这个问题主要出在两个地方:ChromeDriver和Chrome版本不兼容,或者你用的滚动方式对这个版本的Chrome不友好。给你几个亲测有效的解决方案:

解决方案1:先搞定ChromeDriver和Chrome的版本匹配

这是最可能的原因!你现在用的Chrome是65.0.3325.109,但ChromeDriver却是2.33——这个版本组合完全不兼容!ChromeDriver 2.33只支持Chrome 60-62版本,Chrome 65需要搭配ChromeDriver 2.36或者2.37版本才能正常工作。

具体操作步骤:

  • 卸载当前项目或系统里的旧ChromeDriver
  • 下载对应版本的ChromeDriver(注意要和你的Windows 10 x86_64系统匹配,选64位安装包)
  • 把新的ChromeDriver路径配置到项目的驱动参数里,或者添加到系统PATH环境变量中
解决方案2:更换滚动的实现方式

如果版本匹配后还是有问题,那大概率是你原来的滚动代码在这个版本的Chrome里不支持,试试下面几种替代方案:

方法A:定位元素后用scrollIntoView滚动

找到页面下方的某个可见元素,通过JS让它滚动到视图范围内,这种方法稳定性很高:

// 先定位到页面下方的目标元素,比如底部的按钮、文本等
WebElement targetElement = driver.findElement(By.xpath("你的目标元素XPath"));
JavascriptExecutor js = (JavascriptExecutor) driver;
// 执行滚动,true表示元素顶部对齐视图顶部
js.executeScript("arguments[0].scrollIntoView(true);", targetElement);

方法B:用TouchAction模拟移动端触摸滚动

因为是Appium操作Chrome(大概率是移动端场景),直接模拟手指滑动的方式更贴合真实操作:

TouchAction touchAction = new TouchAction(driver);
// 获取当前窗口的尺寸
Dimension size = driver.manage().window().getSize();
// 计算滑动的起始和结束坐标:从屏幕下半部分滑到上半部分
int startX = size.getWidth() / 2;
int startY = (int) (size.getHeight() * 0.8);
int endY = (int) (size.getHeight() * 0.2);
// 执行滑动动作,中间加1秒等待确保滑动生效
touchAction.press(PointOption.point(startX, startY))
           .waitAction(WaitOptions.waitOptions(Duration.ofMillis(1000)))
           .moveTo(PointOption.point(startX, endY))
           .release()
           .perform();

方法C:直接滚动到页面最底部

如果不需要定位特定元素,只想直接滑到页面底部,可以用这个JS代码:

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollTo(0, document.body.scrollHeight);");
额外注意事项
  • 尽量把你的Appium服务升级到最新稳定版,旧版Appium对高版本Chrome的兼容性也可能存在问题
  • 启动Chrome的时候,可以添加--disable-extensions、--no-sandbox这类参数,避免浏览器扩展或沙箱机制干扰测试操作

内容的提问来源于stack exchange,提问作者Prashant Shekhar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:06:34