使用 Appium 执行 swipe() 时提到的“步骤”是啥
Posted
技术标签:
【中文标题】使用 Appium 执行 swipe() 时提到的“步骤”是啥【英文标题】:What are the `steps` mentioned while executing swipe() using Appium使用 Appium 执行 swipe() 时提到的“步骤”是什么 【发布时间】:2016-07-28 03:18:48 【问题描述】:这只是出于好奇和对该方法的实现一无所知,我正在查看java代码的appium服务器日志:
driver.swipe()
服务器日志读取:
info: [debug] [BOOTSTRAP] [debug] 从 [x=540.0, y=1066.0] 滑动到 [x=540.0, y=710.0] 步数:22
这里的22 steps
是什么??
【问题讨论】:
【参考方案1】:“步数”表示在“滑动”动作期间将注入和发出多少个微“移动”动作。该值的计算取决于设备的实际显示尺寸和您想要从和到的滑动坐标(滑动距离)。通常,在微动作之间插入一个微小的延迟来模仿“滑动”。
这里是“Swipe”命令实现的示例source code。
【讨论】:
【参考方案2】:步数是内部滑动选项,根据您提供的滑动时间计算。它指示应该在多少步中完成滑动操作。在您的示例中,整个滑动操作通过 22 个小滑动步骤完成。如果您提供duration to 0
,您可能会找到with steps: 0
,而不是steps:22。例如,
info: [debug] [BOOTSTRAP] [debug] 从 [x=540.0, y=1066.0] 滑动到 [x=540.0, y=710.0] 步数:0
根据您为滑动指定的持续时间计算步数
Math.round(duration * swipeStepsPerSec)
每秒滑动步数定义为
const swipeStepsPerSec = 28;
因此,如果您提供 1 秒的滑动持续时间,总步数将变为 28。您可以参考 appium android driver code here。
【讨论】:
你能不能帮我理解这个问题的解决方案***.com/questions/39484982/…以上是关于使用 Appium 执行 swipe() 时提到的“步骤”是啥的主要内容,如果未能解决你的问题,请参考以下文章
UI Automator 和 driver.swipe via appium 有啥区别