Каковы "шаги", упомянутые при выполнении swipe(), используя Appium

Это просто из любопытства и невежества в отношении реализации метода, я просматривал журналы сервера приложений для Java-кода:

driver.swipe()

Журналы сервера:

info: [debug] [BOOTSTRAP] [debug] Прокрутка с [x = 540.0, y = 1066.0] до [x = 540,0, y = 710,0] с шагами: 22

Что такое 22 steps здесь

Ответ 1

Шаги являются внутренними опциями салфетки и рассчитаны с той продолжительностью, которую вы предоставили для выполнения салфетки. Он указывает, сколько шагов должно выполнить действие салфетки. В вашем примере все действия по салфетке завершаются 22 малыми шагами. если вы предоставляете duration to 0, вы можете найти with steps: 0 вместо шагов: 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. Вы можете ссылаться на код приложения Android для Android.

Ответ 2

"Шаги" указывают, сколько микро-действий "двигаться" будет введено и выпущено во время действия "салфетки". Значение рассчитывается в зависимости от фактического размера дисплея устройства и координат, из которых вы хотите сделать саблей, и до (расстояние от салфетки). Как правило, между микро-действиями для подражания "прокручиванию" вставлена ​​крошечная задержка.

Вот пример исходный код в реализации команды "Swipe".